各种报错
ImportErrorWhenRunningHook: Failed to import module __PyInstaller_hooks_0_kivy required by hook for module
三天美好时光啥也没干,就研究这个了。
打包成功,运行应用程序exe闪退的。终于打包成功了。
这所有的原因都是因为我爱你。如果说非要给爱加一个期限,我希望是一万年。
没错,本来都应该都想到的,的的确确都是 【版本不搭配】之错。
虽然不知道为啥选择颜色的没出来,估计是kv没整好,等会再捣鼓捣鼓。
我卸载了python 3.6 3.7 3.8 3.10 3.12
亦卸载了Pyinstaller 6.6 5.3 ....
不知道看哪个哥们的帖子,说是扒开文件夹找hook文件复制 ,也不好使。
终于发现了些许端倪。
PyInstaller指定打包的Python版本_python_NFTDigger-华为云开发者联盟
现在我的版本们是
altgraph 0.17.4
asttokens 2.4.1
certifi 2024.2.2
charset-normalizer 3.3.2
colorama 0.4.6
configparser 7.0.0
Cython 3.0.10
decorator 5.1.1
distlib 0.3.8
docutils 0.21.1
exceptiongroup 1.2.1
executing 2.0.1
filelock 3.13.4
idna 3.7
importlib_metadata 7.1.0
ipython 8.18.1
jedi 0.19.1
Kivy 2.0.0
kivy-deps.angle 0.3.3
kivy-deps.glew 0.3.1
kivy-deps.sdl2 0.3.1
Kivy-Garden 0.1.5
matplotlib-inline 0.1.7
packaging 24.0
parso 0.8.4
pefile 2023.2.7
pillow 10.3.0
pip 24.0
pipenv 2023.12.1
platformdirs 4.2.0
prompt-toolkit 3.0.43
pure-eval 0.2.2
Pygments 2.17.2
pyinstaller 4.5.1
pyinstaller-hooks-contrib 2024.4
pypiwin32 223
pywin32 306
pywin32-ctypes 0.2.2
requests 2.31.0
setuptools 69.5.1
six 1.16.0
stack-data 0.6.3
traitlets 5.14.3
typing_extensions 4.11.0
urllib3 2.2.1
virtualenv 20.25.3
wcwidth 0.2.13
zipp 3.18.1
总结: 也就是说对应python 3.9.4版本的Pyinstaller 是4.5.1
祝生活永远绚丽多彩,开心。♥
保持python3.9.4 kivy2.0.0 版本不变,一直更换Pyinstaller到4.10版本
PyInstaller Manual — PyInstaller 6.6.0 documentation
再往后就不行了,又会出现之前哪个hook错误。
换了这么多版本的pyinstaller,未打包之前是正常运行,打包之后就缺少了部分组件,慢慢再找找把,我相信总会找到的,大不了再搭上些无所谓的时光罢了。
先不着急去换其他的组件,先顺着cmd命令行找找看把。
通过几个小时的琢磨、反复实验、重复打包,发现这压根就是kv文件没起作用导致的。
现在有一种畅想,也就是说kv文件再python 环境变量的系统下,是自动被运行的。也有有可能kv文件没和exe文件同目录
我试着去dist里找了找kv文件复制出来,让kv与exe文件同目录,就达到预想效果了。看来PyInstaller作为一款严谨的软件,还是有它自己的规章要遵循的,新者要潜心多加学习、科学运用才是。