如何编译具有 .kv 文件和其他资源文件的 .py 文件
Posted
技术标签:
【中文标题】如何编译具有 .kv 文件和其他资源文件的 .py 文件【英文标题】:How to compile a .py file which has a .kv file and other resource files 【发布时间】:2018-08-30 17:59:10 【问题描述】:我用 python 和 Kivy 编写了一个应用程序,它有一个 main.py 和 main.kv 文件以及其他资源文件,如图像和文本文件。当我在 Windows 7 上使用 PyInstaller.exe 编译它们时,我不知道后台发生了什么。每次编译时,.exe 文件都会崩溃并出现不同的错误。
所以我希望有人能阐明我将如何获取 main.py 中的所有文件,即编译图像和文本文件。
我在命令行中尝试的命令是:
PyInstaller.exe --onefile --icon=myicon.png main.py
【问题讨论】:
【参考方案1】:在您第一次运行Pyinstaller
后,它应该已经创建了一个main.spec
文件。您可以编辑main.spec
文件以添加您的应用程序需要的任何其他资源(除了Pyinstaller
检测到的资源)。然后你可以使用简单的命令运行Pyinstaller
:
pyinstaller main.spec
请注意,当您提供规范文件参数时,Pyinstaller
的大多数选项都无效(所有这些信息都应该在规范文件中)。如需更多信息,请参阅Pyinstaller docs。
【讨论】:
我收到此错误“OSError: File C:\Users\Sycopath\Desktop\Test field\backup\bk1\dist\Njoro\kivymd \fonts/Roboto-Regular.ttfs not found。当我执行我的代码它完美地工作。并且.ttfs的路径不存在 如果您的脚本需要 PyInstaller 不知道的文件,请执行此操作 "pyi-makespec --paths=/path/to/thisdir --paths=/path/to/otherdir myscript.py" 您在运行pyinstaller
时是否遇到该错误?您的代码或 main.spec
文件中是否引用了该路径?
抱歉耽搁了。 Ikolim 我应该从哪里获得“pyi-makespec ...”的文档以避免进一步的问题
编译后运行 .exe 时出现错误。错误来自 kivymd 设计模块,我没有使用 .spec 文件。我刚刚使用了命令提示符中的“python -m PyInstaller ...”以上是关于如何编译具有 .kv 文件和其他资源文件的 .py 文件的主要内容,如果未能解决你的问题,请参考以下文章
当屏幕在主 .kv 文件中管理时,如何从 .py 文件切换屏幕?
如何打印在.kv(kivy)中输入的TextInput值,以打印在.py文件中?