나는 setup.py
에두고, 사용자 정의 스크립트를 만드는 간단한 진입 점을 사용하고 있습니다 :entry_points는 Python에서 pip 또는 easy_install을 사용하여 사용자 정의 스크립트를 생성하지 않습니까?
entry_points = {
'my_scripts': ['combine_stuff = mypackage.mymod.test:foo']
}
을 mypackage/mymod/test.py
포함 여기서
import argh
from argh import arg
@arg("myarg", help="Test arg.")
def foo(myarg):
print "Got: ", myarg
내가 setup.py
로이 (동일 디렉토리를 사용하여 내 패키지를 설치)
pip install --user -e .
엔트리 포인트가 전혀 처리되지 않습니다. 왜 그런가요?
내가 좋아하는, distribute
easy_install
로 설치하는 경우 :
easy_install --user -U .
후 진입 점 처리 있고 IT 작성
$ cat mypackage.egg-info/entry_points.txt
[my_scripts]
combine_stuff = mypackage.mymod.test:foo
하지만 combine_stuff
라는 실제 스크립트는 내 bin
DIRS의 아무 곳이나 배치되지 가져옵니다 (예 : ~/.local/bin/
). 그것은 단지 만들어지지 않는 것 같습니다. 여기서 뭐가 잘못 됐어? 실행 가능한 스크립트를 만들려면 어떻게해야합니까? 이상적으로는 pip
으로 작업 하시겠습니까?