インストールするとpip
(たとえばvenv
)、<venv>/bin/pip
次のようになります。
#!"<venv>/bin/python"
# -*- coding: utf-8 -*-
import re
import sys
from pip._internal import main
if __name__ == '__main__':
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
sys.exit(main())
対応するエントリ ポイントは として定義され"pip=pip._internal:main"
ます。
私がインストールするときapp
(例えば と を使っvenv
てpip install -e .
)<venv>/bin/app
は次のようになります:
#!"<venv>/bin/python"
# EASY-INSTALL-ENTRY-SCRIPT: 'app','console_scripts','app'
__requires__ = 'app'
import re
import sys
from pkg_resources import load_entry_point
if __name__ == '__main__':
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
sys.exit(
load_entry_point('app', 'console_scripts', 'app')()
)
私の対応するエントリポイントは として定義されてい'app=app:main'
ます。
なぜこのような違いがあるのでしょうか。pkg_resources
と同じように、生成されたスクリプトでの使用を避けたいと思いpip
ます。それを達成する方法は?