Pyinstaller --hidden-imports 不工作

Pyinstaller --hidden-imports not wirking

我正在尝试使用 PyBox2D 和 Pyglet 从 python 游戏构建一个 exe 文件。

当我构建 exe 时出现无法导入模块的错误:
Unable to import the back-end pyglet: module 'gui.backends' has no attribute 'pyglet_framework'
我想这是因为这个文件只从另一个文件 __import__()

导入 indirectly/hidden

这是我的项目层次结构:

我已经尝试通过多种方式将文件添加到 pyinstaller。从目录 /SpaceJam/building 我试过调用:

pyinstaller.exe --onefile "../game/spacejam.py" --hidden-import="gui/framework/backends/pyglet_framework.py"
pyinstaller.exe --onefile "../game/spacejam.py" --hidden-import="../gui/framework/backends/pyglet_framework.py"
pyinstaller.exe --onefile "../game/spacejam.py" --hidden-import="../gui/framework/backends/pyglet_framework"
pyinstaller.exe --onefile "../game/spacejam.py" --hidden-import="../gui/framework/backends/*"

但是 none 似乎改变了错误消息中的任何内容。

我觉得我遗漏了一些明显的东西。有人知道我可能做错了什么或者为什么 --hidden-import 参数似乎不起作用吗?

那个参数expects a module name,不是文件系统路径。你会如何import呢?

我不太清楚你的项目是如何设置的,但试试看

--hidden-import gui.backends.pyglet_framework