使用pyinstaller将.json文件添加到exe文件

时间:2020-05-26 08:08:05

标签: python json pyinstaller

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

Inp 1:pyinstaller -F --add-data“ vocab.json” definition.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 :.”。 definition.py
错误3:pyinstaller:错误:无法识别的参数:--add-path

Inp4:pyinstaller --add-data“。\ vocab.json:”。 definition.py
错误4:pyinstaller:错误:参数--add-data:无效的add_data_or_binary值:'。\ vocab.json:。'

1 个答案:

答案 0 :(得分:0)

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:."