执行使用Pyinstaller生成的exe后没有找到模块错误

时间:2020-08-13 10:04:31

标签: python pyinstaller executable

我的项目结构是这样的

ab_folder
    ---ab.py
    ---abc.py
ab_report
    ---ab_report.py
    ---utils.py

我的主文件是ab_folder中的ab.py,该文件使用abc.py文件,它还从 ab_report 文件夹中导入文件ab_report.py。我正在ab.py中使用以下代码来切换和导入 ab_report 文件夹

的方法
import sys
sys.path.insert(0, "../ab_report")
from ab_report import PDFRepoort

现在,我现在使用pyinstaller生成了ab.py文件(这是我的主文件)的exe。
在阅读 pyinstaller 文档时,我了解到,如果我们的代码更改了--paths,我们必须通过sys.path自变量给出目录。

因此,我当前的目录为ab_folder,在此目录中,我打开了控制台,并运行了以下行以生成ab.spec文件

pyi-makespec --paths=C:\Users\abc\Desktop\Deploy_Exe_Test\ab_report ab.py

此后,我确实运行pyinstaller ab.py命令以在dist文件夹中生成exe,但是当我运行该exe时出现错误提示

No module named ab_report

我认为我的问题可能在于提供路径参数。寻找有价值的建议和帮助。还有这个生成的exe文件将是安全的(很难反转)?

我的python版本是 3.6.6

0 个答案:

没有答案