gpt4 book ai didi

kivy - Pyinstaller 添加数据文件

转载 作者:行者123 更新时间:2023-12-03 21:16:40 25 4
gpt4 key购买 nike

我正在努力使用 pyinstaller。每当我使用 kivy GUI 和 .kv 文件构建此特定脚本并在构建后运行 .exe 时,都会出现 fatal error :

IOError: [Errno 2] No such file or directory: 'main.kv'
我尝试使用 --add-data 添加 .kv 文件以及 mdb 和 dsn 文件(用于 pypyodbc),但出现错误: unrecognized arguments: --add-data'main.kv' . (提到的其他文件还有更多 --add-data 参数。)
是否有任何解决方案或替代方法?

最佳答案

正如其他人(@Anson Chan、@schlimmchen)所说:
如果你想添加一些额外的文件,你应该使用 Adding Data Files .
两种实现方式

  • 命令行:添加 参数--add-data
  • 规范文件:添加 参数datas=
  • 运行时生成pyinstaller第一次。
  • 稍后您可以编辑您的 *.spec文件。
  • 然后运行 ​​pyinstaller将直接使用您的*.spec文件。


  • Parameter逻辑 --add-data 中的参数或 datas= :
  • --add-data :
  • 格式:{source}{os_separator}{destination}
  • os_separator :
  • window :;
  • Mac/Linux/Unix::

  • sourcedestination
  • 逻辑:
  • source : 单个或多个文件的路径,支持glob句法。告诉 PyInstaller 在哪里可以找到文件。
  • destination 一个或多个文件 :目标文件夹,它将在运行时包含您的源文件。
    * 注意 : 不是 目标文件名。
  • 文件夹 : 目标文件夹路径,即亲戚 到目标根目录,不是 绝对路径。




  • 例子:
  • 单个文件:'src/README.txt:.'
  • 多个文件:'/mygame/sfx/*.mp3:sfx'
  • 文件夹:/mygame/data:data'


  • datas=
  • 格式:列表或元组。
  • 例子:见下文。


  • added_files = [
    ( 'src/README.txt', '.' ),
    ( '/mygame/data', 'data' ),
    ( '/mygame/sfx/*.mp3', 'sfx' )
    ]

    a = Analysis(...
    datas = added_files,
    ...
    )
    你的情况
    对于您的(Windows 操作系统),这里是:
  • --add-data在命令行中
  • pyinstaller -F --add-data "main.kv;." yourtarget.py


  • 或者:
  • datas=yourtarget.spec文件,请参见以下内容:

  • a = Analysis(...
    datas = ["main.kv", "."],
    ...
    )

    关于kivy - Pyinstaller 添加数据文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41870727/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com