Che*_*Bin 2 python pyinstaller
我使用 pyinstaller 将 py 脚本转换为 exe,但是当我尝试运行 exe 时,我得到了这个。我该如何修复它?

您必须告诉 pyinstaller 需要在程序中捆绑哪些模块,因此,在您的情况下,您必须将其作为隐藏导入传递:pkg_resources
在运行 pyinstaller 后生成的 .spec 文件中,您将找到如下选项:
hiddenimports=[]
Run Code Online (Sandbox Code Playgroud)
像这样说:
hiddenimports=["pkg_resources"]
Run Code Online (Sandbox Code Playgroud)
然后,像这样运行 pyinstaller:
pyinstaller app.spec
Run Code Online (Sandbox Code Playgroud)
或者,如果您仍然想通过 .py 运行它,请将其作为参数传递,例如
pyinstaller app.py --hidden-import pkg_resources
Run Code Online (Sandbox Code Playgroud)
通常,如果您的程序不仅仅是一个“Hello world”,那么这将是更多的模块,您只需将它们全部添加到hiddenimports作为列表,直到没有更多的ModuleNotFoundError。
如果您修改了 .spec 文件,请记住不要对 .py 文件运行 pyinstaller,因为它将创建一个新文件并覆盖它,忽略前一个文件。
您必须使用 .spec 文件执行 pyinstaller
| 归档时间: |
|
| 查看次数: |
3794 次 |
| 最近记录: |