我不能用pyinstaller打包,错误是"RuntimeError: No metadata path found for distribution 'greenlet'."



我不知道如何解决"RuntimeError:没有找到发行版'greenlet'的元数据路径。"我已经搜索了我的代码"greenlet",但我没有导入模块。我的pyinstaller版本是4.4,PyQt5版本是5.15.4。导入的模块有pandas、PyQt5、os、sys、configparser、json、selenium、time

Traceback (most recent call last):
File "c:programdataanaconda3librunpy.py", line 193, in _run_module_as_main
"__main__", mod_spec)
File "c:programdataanaconda3librunpy.py", line 85, in _run_code
exec(code, run_globals)
File "C:ProgramDataAnaconda3Scriptspyinstaller.exe__main__.py", line 7, in <module>
File "c:programdataanaconda3libsite-packagesPyInstaller__main__.py", line 126, in run
run_build(pyi_config, spec_file, **vars(args))
File "c:programdataanaconda3libsite-packagesPyInstaller__main__.py", line 65, in run_build
PyInstaller.building.build_main.main(pyi_config, spec_file, **kwargs)
File "c:programdataanaconda3libsite-packagesPyInstallerbuildingbuild_main.py", line 758, in main
build(specfile, kw.get('distpath'), kw.get('workpath'), kw.get('clean_build'))
File "c:programdataanaconda3libsite-packagesPyInstallerbuildingbuild_main.py", line 705, in build
exec(code, spec_namespace)
File "C:Users28912Desktopmain.spec", line 19, in <module>
noarchive=False)
File "c:programdataanaconda3libsite-packagesPyInstallerbuildingbuild_main.py", line 254, in __init__
self.__postinit__()
File "c:programdataanaconda3libsite-packagesPyInstallerbuildingdatastruct.py", line 159, in __postinit__
self.assemble()
File "c:programdataanaconda3libsite-packagesPyInstallerbuildingbuild_main.py", line 433, in assemble
self.graph.process_post_graph_hooks(self)
File "c:programdataanaconda3libsite-packagesPyInstallerdependanalysis.py", line 373, in process_post_graph_hooks
module_hook.post_graph(analysis)
File "c:programdataanaconda3libsite-packagesPyInstallerdependimphook.py", line 451, in post_graph
self._load_hook_module()
File "c:programdataanaconda3libsite-packagesPyInstallerdependimphook.py", line 409, in _load_hook_module
self.hook_module_name, self.hook_filename)
File "c:programdataanaconda3libsite-packagesPyInstallercompat.py", line 632, in importlib_load_source
return mod_loader.load_module()
File "<frozen importlib._bootstrap_external>", line 399, in _check_name_wrapper
File "<frozen importlib._bootstrap_external>", line 823, in load_module
File "<frozen importlib._bootstrap_external>", line 682, in load_module
File "<frozen importlib._bootstrap>", line 265, in _load_module_shim
File "<frozen importlib._bootstrap>", line 684, in _load
File "<frozen importlib._bootstrap>", line 665, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 678, in exec_module
File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
File "c:programdataanaconda3libsite-packagesPyInstallerhookshook-gevent.py", line 25, in <module>
datas += copy_metadata('gevent', recursive=True)
File "c:programdataanaconda3libsite-packagesPyInstallerutilshooks__init__.py", line 940, in copy_metadata
dest = _copy_metadata_dest(dist.egg_info, dist.project_name)
File "c:programdataanaconda3libsite-packagesPyInstallerutilshooks__init__.py", line 975, in _copy_metadata_dest
f"No metadata path found for distribution '{project_name}'.")
RuntimeError: No metadata path found for distribution 'greenlet'.

我刚开始使用pyinstaller并立即遇到这个错误。经过我的努力,我用下面的命令解决了这个问题。

pip  install --ignore-installed greenlet

如果遇到check_exists错误,请在hook-sysconfig中的sysconfig._get_sysconfigdata_name()函数中输入值True.

sysconfig._get_sysconfigdata_name(True)

完成这些步骤后,我解决了问题并生成了exe.

相关内容

最新更新