如何解决执行我的 setuptools console_script 时出现 ModuleNotFoundError
我知道有人问过很多类似的问题,但我觉得我已经尝试了所有方法,但总是遇到同样的错误。我关注了这篇文章 https://gehrcke.de/2014/02/distributing-a-python-command-line-application/,我想我也做了同样的事情。无论如何,这是我的项目结构:
nc-textmanager-tool/
├── nc_textmanager
│ ├── gui/
│ ├── textmanager/
│ ├── __init__.py
│ ├── __main__.py
│ └── nc_main.py
├── LICENSE
├── bundles.yaml
├── env.yaml
├── requirements.txt
├── README.rst
└── setup.py
这是setup.py
的内容import setuptools
with open("README.md","r",encoding="utf-8") as f:
long_desc = f.read()
with open("requirements.txt",encoding="utf-8") as f:
requirements = f.readlines()
setuptools.setup(
name="nc-textmanager",version="1.1.11",author="XXX",author_email="XXX",description="A simple tool for viewing and searching through keys and values used by Textmanger in NC projects.",long_description=long_desc,long_description_content_type="text/markdown",packages=setuptools.find_packages(),entry_points={
"console_scripts": ['nc_textmanager = nc_textmanager.nc_main:run']
},url="???",classifiers=[
"Programming Language :: Python :: 3","License :: OSI Approved :: MIT License","Operating System :: OS Independent",],python_requires='>=3.8',install_requires=requirements
)
通过运行 python .\setup.py install
安装它工作正常,但是当我尝试从控制台运行我的 nc_textmanager
脚本时,我收到此错误:
> nc_textmanager
Traceback (most recent call last):
File "C:\Users\SEHE\AppData\Local\Programs\Python\python39\Scripts\nc_textmanager-script.py",line 33,in <module>
sys.exit(load_entry_point('nc-textmanager==1.1.11','console_scripts','nc_textmanager')())
File "C:\Users\SEHE\AppData\Local\Programs\Python\python39\Scripts\nc_textmanager-script.py",line 25,in importlib_load_entry_point
return next(matches).load()
File "C:\Users\SEHE\AppData\Local\Programs\Python\python39\lib\importlib\Metadata.py",line 77,in load
module = import_module(match.group('module'))
File "C:\Users\SEHE\AppData\Local\Programs\Python\python39\lib\importlib\__init__.py",line 127,in import_module
return _bootstrap._gcd_import(name[level:],package,level)
File "<frozen importlib._bootstrap>",line 1030,in _gcd_import
File "<frozen importlib._bootstrap>",line 1007,in _find_and_load
File "<frozen importlib._bootstrap>",line 984,in _find_and_load_unlocked
ModuleNotFoundError: No module named 'nc_textmanager.nc_main'
我确实尝试将 nc_textmanager-script.py
文件放在我的项目根目录中并在那里执行,一切正常。因此,我认为工作目录存在问题...
在 Windows 10 上使用 python 3.8。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。