如何解决为什么 ModuleNotFoundError: 没有名为“XXX”的模块,其中 XXX 是它自己
我创建了一个 python 包并将其托管在我自己的 GitHub 存储库中。当我从 GitHub pip install 时,收到以下错误:
Getting requirements to build wheel ... error
...
ModuleNotFoundError: No module named 'XXX'
其中 XXX
是我尝试安装的软件包的名称。这对我来说没有意义。有人可以对此有所了解吗?
编辑 1: 我设法找到了一个表现出这种行为的永久存储库。请尝试以下操作:
pip install https://github.com/rm-hull/luma.core/archive/master.zip
pip install https://github.com/rm-hull/luma.oled/archive/master.zip
为了复制错误,您必须按照上面显示的顺序执行 pip 命令(如果您先执行第二个 pip 命令,则不会产生错误)。最后一个 pip 产生了以下错误:
...
ModuleNotFoundError: No module named 'luma.oled'
我在 Win10 上使用 Python 3.7.9、pip 21.0.1、setuptools 54.1.1。
注意:在 ...
的位置有一长串错误消息。
编辑 2:
这是安装 luma.oled
时的完整错误:
Collecting https://github.com/rm-hull/luma.oled/archive/master.zip
Using cached https://github.com/rm-hull/luma.oled/archive/master.zip
Installing build dependencies ... done
Getting requirements to build wheel ... error
ERROR: Command errored out with exit status 1:
command: 'c:\users\user\appdata\local\programs\thonny\python.exe' 'c:\users\user\appdata\local\programs\thonny\lib\site-packages\pip\_vendor\pep517\_in_process.py' get_requires_for_build_wheel 'C:\Users\user\AppData\Local\Temp\tmphvzewynk'
cwd: C:\Users\user\AppData\Local\Temp\pip-req-build-5w6wbo9g
Complete output (48 lines):
Traceback (most recent call last):
File "C:\Users\user\AppData\Local\Temp\pip-build-env-_xeaivwi\overlay\Lib\site-packages\setuptools\config.py",line 387,in _parse_attr
return getattr(StaticModule(module_name),attr_name)
File "C:\Users\user\AppData\Local\Temp\pip-build-env-_xeaivwi\overlay\Lib\site-packages\setuptools\config.py",line 25,in __init__
with open(spec.origin) as strm:
AttributeError: 'nonetype' object has no attribute 'origin'
During handling of the above exception,another exception occurred:
Traceback (most recent call last):
File "c:\users\user\appdata\local\programs\thonny\lib\site-packages\pip\_vendor\pep517\_in_process.py",line 280,in <module>
main()
File "c:\users\user\appdata\local\programs\thonny\lib\site-packages\pip\_vendor\pep517\_in_process.py",line 263,in main
json_out['return_val'] = hook(**hook_input['kwargs'])
File "c:\users\user\appdata\local\programs\thonny\lib\site-packages\pip\_vendor\pep517\_in_process.py",line 114,in get_requires_for_build_wheel
return hook(config_settings)
File "C:\Users\user\AppData\Local\Temp\pip-build-env-_xeaivwi\overlay\Lib\site-packages\setuptools\build_Meta.py",line 150,in get_requires_for_build_wheel
config_settings,requirements=['wheel'])
File "C:\Users\user\AppData\Local\Temp\pip-build-env-_xeaivwi\overlay\Lib\site-packages\setuptools\build_Meta.py",line 130,in _get_build_requires
self.run_setup()
File "C:\Users\user\AppData\Local\Temp\pip-build-env-_xeaivwi\overlay\Lib\site-packages\setuptools\build_Meta.py",line 145,in run_setup
exec(compile(code,__file__,'exec'),locals())
File "setup.py",line 7,in <module>
setuptools.setup()
File "C:\Users\user\AppData\Local\Temp\pip-build-env-_xeaivwi\overlay\Lib\site-packages\setuptools\__init__.py",line 153,in setup
return distutils.core.setup(**attrs)
File "c:\users\user\appdata\local\programs\thonny\lib\distutils\core.py",line 121,in setup
dist.parse_config_files()
File "C:\Users\user\AppData\Local\Temp\pip-build-env-_xeaivwi\overlay\Lib\site-packages\setuptools\dist.py",line 708,in parse_config_files
ignore_option_errors=ignore_option_errors)
File "C:\Users\user\AppData\Local\Temp\pip-build-env-_xeaivwi\overlay\Lib\site-packages\setuptools\config.py",line 157,in parse_configuration
Meta.parse()
File "C:\Users\user\AppData\Local\Temp\pip-build-env-_xeaivwi\overlay\Lib\site-packages\setuptools\config.py",line 463,in parse
section_parser_method(section_options)
File "C:\Users\user\AppData\Local\Temp\pip-build-env-_xeaivwi\overlay\Lib\site-packages\setuptools\config.py",line 436,in parse_section
self[name] = value
File "C:\Users\user\AppData\Local\Temp\pip-build-env-_xeaivwi\overlay\Lib\site-packages\setuptools\config.py",line 220,in __setitem__
value = parser(value)
File "C:\Users\user\AppData\Local\Temp\pip-build-env-_xeaivwi\overlay\Lib\site-packages\setuptools\config.py",line 552,in _parse_version
version = self._parse_attr(value,self.package_dir)
File "C:\Users\user\AppData\Local\Temp\pip-build-env-_xeaivwi\overlay\Lib\site-packages\setuptools\config.py",line 390,in _parse_attr
module = importlib.import_module(module_name)
File "c:\users\user\appdata\local\programs\thonny\lib\importlib\__init__.py",line 127,in import_module
return _bootstrap._gcd_import(name[level:],package,level)
File "<frozen importlib._bootstrap>",line 1006,in _gcd_import
File "<frozen importlib._bootstrap>",line 983,in _find_and_load
File "<frozen importlib._bootstrap>",line 965,in _find_and_load_unlocked
ModuleNotFoundError: No module named 'luma.oled'
----------------------------------------
WARNING: discarding https://github.com/rm-hull/luma.oled/archive/master.zip. Command errored out with exit status 1: 'c:\users\user\appdata\local\programs\thonny\python.exe' 'c:\users\user\appdata\local\programs\thonny\lib\site-packages\pip\_vendor\pep517\_in_process.py' get_requires_for_build_wheel 'C:\Users\user\AppData\Local\Temp\tmphvzewynk' Check the logs for full command output.
由 config.py
的 setuptools
触发的两个错误。但是如果在 Raspbian GNU/Linux 10 (buster) 下安装,则不会出现错误。
解决方法
需要更多详细信息才能准确回答,但您是否有机会在 setup.py
中从您自己的模块中导入某些内容?由于这是安装过程,因此无法访问它尝试安装的代码
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。