首页 > 解决方案 > Kivy:为 Windows 打包应用程序时,Builder.load_file('*.kv') 抛出 FileNotFoundError

问题描述

我正在尝试为 Windows 打包我的应用程序,但在运行生成的 .exe 文件时我不断收到此错误。该文件确实存在于项目目录中,并且在直接运行 main.py 时可以正常工作。在我的 main.py 中,我调用了 Builder.load_file('home_screen.kv'),这似乎是引发错误的地方。

 Traceback (most recent call last):
   File "main.py", line 46, in <module>
   File "site-packages\kivy\app.py", line 800, in run
   File "main.py", line 10, in build
   File "main.py", line 15, in __init__
   File "site-packages\kivy\lang\builder.py", line 288, in load_file
 FileNotFoundError: [Errno 2] No such file or directory: 'home_screen.kv'
[3208] Failed to execute script main

此问题并非特定于 home_screen.kv,因为即使我删除该行,下一行 Builder.load_file('create_schedule.kv') 也会引发相同的错误。

标签: pythonwindowskivypackaging

解决方案


在你的.spec文件中添加一行Analysis

datas=[('*.kv', '.')],

这将包括home_screen.kv(假设它与您的 位于同一目录中main.py)。


推荐阅读