我正在使用pyinstaller使用.spec文件“编译”一个程序。我正在使用.spec文件,因为我需要在程序中包含一个额外的文件。当我尝试执行PyInstaller --onefile Prog.spec时,它仍然会在dist中创建一个文件夹,其中所有文件都是单独的,而不是像我预期的那样生成单个文件。如果我这样做,那么它会在我想要的地方生成一个.exe文件。在使用.spec文件时,是否需要做一些特殊的事情?

最佳答案

您可以在命令行中添加额外的文件,而不是编辑等级库文件:

pyinstaller --onefile --add-data <SRC;DEST or SRC:DEST> yourfile.py

否则,请确保spec文件中没有collect步骤:
在一个文件模式下,没有要收集的调用,并且exe实例接收所有脚本、模块和二进制文件。
https://pyinstaller.readthedocs.io/en/stable/usage.html了解有关命令行标志的更多信息。
如果问题持续存在,这也可能提供一些见解:Bundling data files with PyInstaller (--onefile)

关于python - 在PyInstaller中使用带有.spec的--onefile,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47143315/

10-14 03:53