使用python执行命令行脚本时找不到'__main__'模块

时间:2020-08-24 23:23:50

标签: python command-line pypi

我指定这是我使用PyPI的第一个项目,所以请客气:)

我用python开发了一个命令行工具,并上传到PyPi(https://github.com/ferru97/PyPaperBot

项目的结构如下:

PyPaperBot
|__PyPaperBot      
    |_ __init__.py    
    |_ __main__.py 
    |_ other stuff..
|_setup.py`
|_other stuff..

由于我不想在setup.py上通过命令行执行此工具,所以我添加了:

 packages = ['PyPaperBot'],  
 entry_points={ 
 "console_scripts":["PyPaperBot = PyPaperBot.__main__:main"],
  },

但是它似乎不起作用,因为每次我py PyPaperBot都会返回以下错误:

can't find '__main__' module in 'PyPaperBot

有什么建议吗?我试了四个小时

感谢您的帮助

2 个答案:

答案 0 :(得分:1)

我有一个具有相同项目布局的PyPi项目,我看到的唯一区别是使用packages参数,请尝试使用packages=setuptools.find_packages(),。这对我有用,并在docs中使用。

答案 1 :(得分:1)

已解决。我的错,我使用py PyPaperBot而不是py -m PyPaperBot

运行模块
相关问题