Kivy:Builder.load_file('*.kv') 在为 Windows 打包应用程序时抛出 FileNotFoundError

Kivy: Builder.load_file('*.kv') throws a FileNotFoundError when packaging app for Windows

我正在尝试为 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') 中删除该行,也会引发相同的错误。

在您的 .spec 文件中,在 Analysis 中添加一行,例如:

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

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