我希望使用setuptools安装一个脚本,设置如下:
在我的开发目录中有以下文件:
- setup.py 和
- z_script.py。
z_script.py
文件如下:
def main():
print "Running..."
我的setup.py
看起来像这样:
from setuptools import setup
setup(
name = 'z_script', version = '0.2',
entry_points = {"console_scripts": ["z_script = z_script:main"]},
)
当我运行python setup.py install
时,脚本成功安装到了正确的bin
目录中。
然而,当我使用z_script
运行脚本时,会出现错误:
Traceback (most recent call last):
File "./z_script", line 8, in <module>
load_entry_point('z-script==0.2', 'console_scripts', 'z_script')()
File "/home/woltan/local/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg/pkg_resources.py", line 318, in load_entry_point
File "/home/woltan/local/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg/pkg_resources.py", line 2221, in load_entry_point
File "/home/woltan/local/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg/pkg_resources.py", line 1954, in load
ImportError: No module named z_script
bin
目录可以通过系统的PATH
环境变量访问,而且当我执行z_script
时没有设置PYTHONPATH
环境变量。
现在我的问题是:
我的设置有什么问题吗?为什么脚本找不到正确的模块?
z_script
已成功安装在路径~/local/bin
中,并且已添加到PATH
环境变量中。因此,我可以在计算机的任何位置执行它。而且,我已经发布了所有实际的代码... - Woltanz_script
,我可以从机器上的任何位置运行它,因为它通过PATH
环境变量可访问。当我运行脚本时,我没有设置任何PYTHONPATH
变量。 - Woltan