Python 【学习ing...】打包问题 依赖文件也引入

pyinstaller打包后的目录结构

Python 【学习ing...】打包问题 依赖文件也引入_第1张图片

exe文件在dist下面


工程结构

Python 【学习ing...】打包问题 依赖文件也引入_第2张图片

主文件内容

Python 【学习ing...】打包问题 依赖文件也引入_第3张图片

我在Test.py里面引用了A.py的方法,这是我虽然代码运行没问题,但是exe执行报错的关键原因

问题1:生成的exe文件闪退

解决:1-A,可以通过com去执行exe文件查看错误原因

Python 【学习ing...】打包问题 依赖文件也引入_第4张图片

   解决:1-B,可以通过build目录下的warn-Test.txt去查看原因

Python 【学习ing...】打包问题 依赖文件也引入_第5张图片

问题2:由于主文件中引用了其他文件,打包时的方法

pyinstaller -F xxx.py(xxx.py,打包的文件):这是大多网上教程

对于有依赖文件时打包命令

例如:

pyinstaller -F  MailUtils.py -p  C:\Users\dapao\AppData\Local\Programs\Python\Python35-32\Lib -p E:\AboutDeveloper\Workspace_Eclipse\freePy\

解释例子:

pyinstaller -F 主程序文件 -p  python安装的所有库 -p 自己的工程包(到工程部包名为止,子包不需要包含)

-h,--help 查看该模块的帮助信息
-F,-onefile 产生单个的可执行文件
-D,--onedir 产生一个目录(包含多个文件)作为可执行程序
-a,--ascii 不包含 Unicode 字符集支持
-d,--debug 产生 debug 版本的可执行文件
-w,--windowed,--noconsolc 指定程序运行时不显示命令行窗口(仅对 Windows 有效)
-c,--nowindowed,--console 指定使用命令行窗口运行程序(仅对 Windows 有效)
-o DIR,--out=DIR 指定 spec 文件的生成目录。如果没有指定,则默认使用当前目录来生成 spec 文件
-p DIR,--path=DIR 设置 Python 导入模块的路径(和设置 PYTHONPATH 环境变量的作用相似)。也可使用路径分隔符(Windows 使用分号,Linux 使用冒号)来分隔多个路径
-n NAME,--name=NAME 指定项目(产生的 spec)名字。如果省略该选项,那么第一个脚本的主文件名将作为 spec 的名字

关于详细的打包命令,自行百度吧,我就放一条别人的博客仅供参考

https://blog.csdn.net/XD_Cauthy/article/details/92639788 

你可能感兴趣的:(python)