我正在使用py2exe
打包wxPython GUI以便在Windows上进行分发。这是我的目录结构的简单版本:
\project
my_gui.py
setup.py
\submodule1
__init__.py
one.py
\submodule2
__init__.py
two.py
我的GUI导入了submodule1和submodule2,但是当我运行我的设置脚本时,它们没有显示在发行版中,并且GUI退出时出现错误(ImportError: No module named submodule.one
)。
我彻底困惑。文档说py2exe应该自动发现导入的模块并将它们添加到冻结的二进制文件中。由于这似乎没有发生,我如何明确强制py2exe包含这些子模块?
当我将子模块1添加到"包含"在我的setup.py文件中列出,构建中断了这个错误:Import Error: "No module named submodule"
。
有什么建议吗?
更新
看起来问题是我实际上将我的设置脚本保存在子目录中,所以我正在运行python scripts/setup.py
。这似乎是打破进口的原因。哎呀。