2015-09-12 41 views
0

我想在python setuptools上生成我的可執行腳本。 我的項目結構爲:獲取entry_points console_scripts爲一個複雜的結構

.project 
├── ./lib 
│   ├── ./source/tasker.py 
│   ├── ./source/__init__.py 
│   ├── ./__init__.py 
│   ├── ./settings.py 
│ 
├── ./README.md 
├── ./setup.py 

我的切入點:

entry_points={ 
    'console_scripts': [ 
     'command=lib.source.tasker:main', 
    ] 
}, 

但它提供了一個導入錯誤:

ImportError: No module named source.tasker 
load_entry_point('project==0.2.0', 'console_scripts', 'command')() 
+0

這是tasker.py,我有一個錯字編輯的問題道歉有一個錯字 – rrindam

回答

0

如果你的模塊被命名爲 「tracker.py」,不該你的切入點是:

entry_points={ 
    'console_scripts': [ 
     'command=lib.source.tracker:main', 
    ] 
}, 
+0

。 – rrindam

+0

如果您從.project目錄(與setup.py相同的級別)運行python shell,您是否能夠成功運行:「from lib.source.tasker import main」? – georgeofallages

+0

在解釋器中,您可以檢查我的回購https://github.com/arindampradhan/learnpython – rrindam

0

好啊,那我想通了什麼問題:

我錯過添加源文件目錄lib.source到包裝setup.py

packages=['lib','lib.source'], 
entry_points={ 
    'console_scripts': [ 
     'learnpython = lib.source.tasker:main', 
    ] 
},