用pyinstaller打包多个py文件,闪退
情境是这样的:我写了个main.py,里面import了同一目录下的manage.py
然后manage.py又调用了目录下MyImport子目录里面的MyExit.py
直接在PyCharm里面运行main.py是可以的,命令提示符运行也没问题
我测试了pyinstaller -F main.py,发现生成的exe闪退
,把main.spec中修改为a = Analysis(['main.py','manage.py','D:\\1\\3\\MyImport\\MyExit.py'],
然后用pyinstaller -D main.spec打包,完成之后,还是闪退
命令提示符测试提示:
PS D:\1\打包测试\dist> .\main
Traceback (most recent call last):
File "main.py", line 2, in <module>
File "<frozen importlib._bootstrap>", line 983, in _find_and_load
File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
File "PyInstaller\loader\pyimod03_importers.py", line 540, in exec_module
File "manage.py", line 1, in <module>
AttributeError: module 'MyImport' has no attribute 'MyExit'
Failed to execute script main
如果我把所有的.py放到一个目录下,能正常打包,就是多个文件夹就GG。求救
求正确打包过程。Python小白求助。最好有视频,文字的话,我努力。。。
测试附件地址:https://ws28.cn/f/5rxsktrjyqw 复制链接到浏览器打开
里面是我修改完main.spec,并打包后的所有文件,谢谢大佬们!
伪装雨天 发表于 2021-6-29 15:44
刚下载了你的连接,你需要调用的py程序要放在同意目录下,把你MyImport里面的拿出来应该就行
是的,拿出来放同一目录是可以的。只是因为初学,刚好学到import一个文件夹中的所有.py文件,所以才出现这个问题。
在显示中,如果要打包成exe,是必须都放在同一目录下吗?那如果引用了第三方库,也是要拷贝过来还是该如何? 我打包了很多次都是找不到模块或者模块丢失。。娘希匹的啊。恶心死。 Darkline 发表于 2021-6-29 12:24
一闪而过是不是没加-w 我一般是用pyinstaller -F -w -i 图标.ico源文件.py这个命令来打包的
不是,我能打包出exe,是exe打开时一闪而过 pan_jianpeng 发表于 2021-6-29 12:38
不是,我能打包出exe,是exe打开时一闪而过
调用时间函数啊,你肯定写的直接输出吧 pan_jianpeng 发表于 2021-6-29 12:38
不是,我能打包出exe,是exe打开时一闪而过
那是因为你py文件运行报错了。比如缺少调取的文件。要在同一目录里的 建议先用录屏,然后一帧帧的看,有没有报错,这个一闪而过大概率是包的问题,--hidden-import 是个好东西{:1_918:} 闪退是嘛,不能正常打开? 有几个比较常见的问题,你试着路径不要有中文命再试试,或者还有没有其他类似dat文件需要用到,建议你先用-c打包用cmd运行,没问题了再打包成exe 超人强 发表于 2021-6-29 13:09
那是因为你py文件运行报错了。比如缺少调取的文件。要在同一目录里的
是的,放同一目录下测试是没有问题的。就是想知道,如果我把py文件放到了子目录,要打包时该如何操作?还是说不能这样操作? Autism55 发表于 2021-6-29 13:00
调用时间函数啊,你肯定写的直接输出吧
我设计的函数需要输入内容input的,所以应该不是立刻输出然后关闭的情形
页:
[1]
2