hug*_*hes 3 python setuptools entry-point
我的项目目录结构如下所示:
clc
|-clc
| |-__init__.py
| |-clc.py
| |-main.py
|-setup.py
Run Code Online (Sandbox Code Playgroud)
main.py 看起来像这样:
def main():
print "it works!"
Run Code Online (Sandbox Code Playgroud)
在setup.py:
config = {
...
'entry_points':
'clc_scripts': ['clc = clc.main:main']
}
}
setup(**config)
Run Code Online (Sandbox Code Playgroud)
当我跑步时python setup.py build,我最终得到以下内容:
running build
running build_py
creating build
creating build/lib
creating build/lib/clc
copying clc/__init__.py -> build/lib/clc
copying clc/clc.py -> build/lib/clc
copying clc/main.py -> build/lib/clc
Run Code Online (Sandbox Code Playgroud)
bin即使我指定了入口点,也没有创建文件夹.它确实创建了一个文件clc.egg-info/entry_points.txt:
$ cat clc.egg-info/entry_points.txt
[clc_scripts]
clc = clc.main:main
Run Code Online (Sandbox Code Playgroud)
为什么setuptools没有创建我的入口点可执行文件?
1)调用生成脚本的入口点console_scripts.
因此,请在此处修改入口点的名称setup.py:
config = {
...
'entry_points':
'console_scripts': ['clc = clc.main:main']
}
}
Run Code Online (Sandbox Code Playgroud)
2) 只有您的发行版才会执行入口点build.他们真的只对install或有意义develop.试试python setup.py install.
| 归档时间: |
|
| 查看次数: |
1794 次 |
| 最近记录: |