我正在尝试了解entry_points以及如何从命令行使用Python。我的操作系统是Linux(Mint 15),我用Python 2.7.4和3.3.1尝试使用virtualenv失败了。
foo/setup.py
:
setup(
name='foo',
version='0.0.1',
description='foo',
url='http://www....',
author='Foo',
author_email='xxx@xxx.com',
install_requires = ['docopt', 'termcolor'],
packages = ['foo'],
entry_points = {
'console_script': [
'foo = foo.main:start'
],
},
)
foo\foo\main.py
:
def start():
print 'test'
foo\foo\__init.py__
:空
我安装了:python setup.py develop
(learn27)user@machine /data/apps/learn27/rocks $ python setup.py develop
running develop
... more output here
但是当试图从命令行运行“foo”时,它只是说“找不到命令”。我在文件系统上找不到任何名为“foo”的文件。
据我了解,我希望生成的可执行文件位于bin文件夹中:
>>> print distutils.sysconfig.get_config_var('prefix')
/data/apps/virtenvs/learn27
提前感谢您的帮助!
答案 0 :(得分:2)
入口点名为console_scripts
,复数,您拼错为console_script
(单数)。
请参阅setuptools
文档中的Automatic Script Creation。
答案 1 :(得分:-2)
您可能需要将其添加到路径