Kivy Pyinstaller Windows 打包

各种报错

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作为一款严谨的软件,还是有它自己的规章要遵循的,新者要潜心多加学习、科学运用才是。

上一篇:了解MySQL InnoDB多版本MVCC(Multi-Version Concurrency Control)


下一篇:JVM基础面试题第一篇