File "PyInstaller/loader/pyimod03_importers.py", line 546, in exec_module, ModuleNotFoundError: No module named 'x'

File "PyInstaller/loader/pyimod03_importers.py", line 546, in exec_module, ModuleNotFoundError: No module named 'x'

编辑

我正在尝试将 algosec.models 导入到 algobot 包内的文件中。

我试过添加--hidden-import algosec,我也试过在导入前添加路径,使用sys.path.append(./../algosec) 这是我尝试 运行 程序时收到的错误消息:

Traceback (most recent call last):
  File "algobot_packer/algobot.py", line 2, in <module>
  File "PyInstaller/loader/pyimod03_importers.py", line 546, in exec_module
  File "algobot/cli/cli.py", line 3, in <module>
  File "PyInstaller/loader/pyimod03_importers.py", line 546, in exec_module
  File "algobot/microsoft_teams/mainloop.py", line 9, in <module>
  File "PyInstaller/loader/pyimod03_importers.py", line 546, in exec_module
  File "algobot/framework/configuration.py", line 34, in <module>
  File "PyInstaller/loader/pyimod03_importers.py", line 546, in exec_module
  File "algobot/framework/commands.py", line 22, in <module>
  File "PyInstaller/loader/pyimod03_importers.py", line 546, in exec_module
  File "algobot/framework/bot.py", line 4, in <module>
  File "PyInstaller/loader/pyimod03_importers.py", line 546, in exec_module
  File "algobot/framework/responses.py", line 9, in <module>
ModuleNotFoundError: No module named 'algosec'

文件夹结构为:

我正在使用 pyinstaller 版本 4.2 自从上次我的可执行文件 运行 完全正常后,我没有对代码进行任何更改,但现在我每次都收到此错误。 问题是 - 文件夹 'algosec' 是我项目中的一个子目录,并且在 pipfile 中有注明,我有一段时间没有做任何更改并最近对其进行了测试(最后一次测试是在 7 月 8 日)) , 因此我认为这是一个依赖性问题,但不确定要解决哪个问题或如何解决。

我尝试了多项更改,但在一个 运行 上以某种方式起作用,但是当我尝试再次进行这些更改时,它在其他版本上失败了...

您可以使用
--add-data "path_to_algobot:."
根据您的系统,windows 使用 ;linux 使用 :

它会明确地将您的 algosec 文件夹添加到包中。

显然,由于我使用了 zeepdeprecated 的最高版本而没有给出固定版本,因此由于较新的版本而导致了问题。 我必须将它们添加到 algobot 包的 setup.py 中,该包是具有固定版本的可执行文件的主包。

此外,我必须添加 algosec 包的 .egg 文件 --paths 以便 pyinstaller 找到它。