【问题标题】:adding .json files to an exe file using pyinstaller使用 pyinstaller 将 .json 文件添加到 exe 文件
【发布时间】:2020-09-12 23:24:26
【问题描述】:

我正在使用 pyinstaleer 从 python 文件创建一个 .exe 文件,我必须向其中添加一个 .json 文件。我以多种方式使用了 --add-data 参数,但它们返回了错误

Inp 1:pyinstaller -F --add-data "vocab.json" 定义.py
错误1:pyinstaller:错误:参数--add-data:无效的add_data_or_binary值:'vocab.json'

Inp 2: pyinstaller -F --add-data "vocab.json;vocab.json" 定义.py
错误 2:这使得 3 个文件夹 - dist、pycache 和 build 与 definition.spec 和 definition.exe 文件一起。但是当我运行 exe 文件时,会打开一个 cmd 窗口并收到此错误消息。 the error 错误是找不到json,但它与python文件位于同一文件夹中。

Inp 3 : pyinstaller --add-path ".\vocab.json:."定义.py
错误3:pyinstaller:错误:无法识别的参数:--add-path

Inp4: pyinstaller --add-data ".\vocab.json:."定义.py
错误4:pyinstaller:错误:参数--add-data:无效的add_data_or_binary值:'.\vocab.json:.'

【问题讨论】:

    标签: python json pyinstaller


    【解决方案1】:

    Pyinstaller 文档 (https://pyinstaller.readthedocs.io/en/stable/usage.html#options-group-what-to-bundle-where-to-search) 说:

    要添加到可执行文件的其他非二进制文件或文件夹。路径分隔符是特定于平台的,使用 os.pathsep(在 Windows 上是 ; 在大多数 unix 系统上是 :)。该选项可以多次使用。

    您必须添加特定于平台的分隔符。对于 Windows 是 ; , 对于 Linux 是 :.

    如果您使用的是 Windows,请尝试:

    pyinstaller -F --add-data "vocab.json;."
    

    如果您使用的是 Linux,请尝试:

    pyinstaller -F --add-data "vocab.json:."
    

    【讨论】:

      猜你喜欢
      • 2022-10-17
      • 1970-01-01
      • 2020-12-19
      • 1970-01-01
      • 2013-05-18
      • 1970-01-01
      • 2020-05-08
      • 1970-01-01
      • 2018-12-18
      相关资源
      最近更新 更多