我正在使用pyinstaller创建单个.exe。对于单个.exe,我还需要分发几个数据文件。.spec文件说明显示,在“.spec”文件中添加“数据”是这样做的.但是这些文件并没有在第一个exe上解压缩。下面是pyinstaller命令:
pyinstaller --F myAwesomeProgram.spec下面是相关的.spec文件内容:
addedFiles = [ ('file1.sql','sql'),
('aspreadsheet.xlsx','tem')]
a = Analysis(['myAwesomeProgram.py'],
pathex=['C:\\Users\\aa\\v3'],
binaries=[],
datas=addedFiles,
hiddenimports=[],我尝试过使用完整的路径名来创建源文件,并在目标子目录中添加“.\”的前缀,但没有成功。
发布于 2022-01-24 22:04:28
基于当前的配置,Pyinstaller正在根目录中查找这两个文件。这些文件指出:
第一个字符串指定当前系统中的一个或多个文件。第二个指定在运行时包含文件的文件夹的名称.
如果这些文件不在根目录中,而且实际上在第二个参数中指定的目录中,那么请尝试将您的配置更改为:
addedFiles = [ ('sql/file1.sql','sql'),
('tem/aspreadsheet.xlsx','tem')]更多信息可以在这里找到:
https://pyinstaller.readthedocs.io/en/stable/spec-files.html#adding-files-to-the-bundle
https://stackoverflow.com/questions/70840941
复制相似问题