PyInstaller和Python模块

PyInstaller和Python模块,python,import,module,bundle,pyinstaller,Python,Import,Module,Bundle,Pyinstaller,我目前正试图将我的Python(3.4.4)应用程序与PyInstaller捆绑在一起。我遵循PyInstaller文档,了解如何构建.spec文件 以下是我的项目文件树的外观: 计划/ __初始值 main.py ui.py 解放党/ __初始值 历史.py Command.py Graphics.py Tools.py 根据文档,我所要做的就是运行pyi makespec main.py函数,只要从main.py文件导入Lib模块,就会检测到它 文件: 由于您的脚本包含import

我目前正试图将我的Python(3.4.4)应用程序与PyInstaller捆绑在一起。我遵循PyInstaller文档,了解如何构建.spec文件

以下是我的项目文件树的外观:

计划/

  • __初始值
  • main.py
  • ui.py
  • 解放党/
    • __初始值
    • 历史.py
    • Command.py
    • Graphics.py
    • Tools.py
根据文档,我所要做的就是运行
pyi makespec main.py
函数,只要从
main.py
文件导入
Lib
模块,就会检测到它

文件:

由于您的脚本包含import helpmod语句,PyInstaller将在捆绑应用程序中创建此文件夹安排

这就是my
main.py
的开头

# main.py
from Lib.Command import Command
from Lib.History import History
from Lib.Graphics import Graphics
import Lib.Tools as Tools
当我尝试运行应用程序后,我得到的只是这个错误。我可能错过了什么,有人知道这个问题吗D

错误日志:


编辑:刚刚发现问题来自我的
Graphics.py
库,它导入了一些我用来生成直方图的bokeh工具。仍然不知道为什么bokeh导入会使整个过程崩溃,当我使用python解释器运行它时,它工作得非常好…

我不确定这是否适用于您的情况,但我发现在类似的情况下,直接导入“核心”模块通常可以解决问题。尝试将
import Lib
作为
main.py
中的第一行。实际上,我尝试了几种导入模块的方法,但似乎都不起作用:“从Lib导入历史记录”、“导入Lib”、“导入Lib.History”和“导入Lib.History作为历史记录”,因为您确定了罪魁祸首,所以可以将缺少的包作为历史记录包含在构建中。然而,我怀疑它比这更深。您是否收到任何导入错误?