我已经创建了一个我正试图编译的程序,但是在编译完成后,我试图从/dist/目录中的.exe启动应用程序,它会创建一个命令提示符窗口,打开应用程序窗口一小段时间,然后关闭。在
我遵循Kivy过程添加适当的导入,并将必需的目录添加到规范的COLLECT区域中。我尝试将pyinstaller hooks导入添加到顶部,正如一些人在不同页面上所建议的那样,但是没有效果。在
应用程序在测试期间通过命令“python”正常启动主.py“,所以我很困惑为什么编译后它没有启动。在
规格:
# -*- mode: python -*-
from kivy.deps import sdl2, glew
block_cipher = None
a = Analysis(['..\\main.py'],
pathex=['C:\\python programs\\Escape Room Program\\compiled'],
binaries=[],
datas=[],
hiddenimports=[],
hookspath=[],
runtime_hooks=[],
excludes=[],
win_no_prefer_redirects=False,
win_private_assemblies=False,
cipher=block_cipher,
**get_deps_all())
pyz = PYZ(a.pure, a.zipped_data,
cipher=block_cipher)
exe = EXE(pyz,
a.scripts,
exclude_binaries=True,
name='EskapAid',
debug=False,
strip=False,
upx=True,
console=True )
coll = COLLECT(exe, Tree('..\\compiled'),
a.binaries,
a.zipfiles,
a.datas,
Tree('..\\img\\', 'img'),
*[Tree(p) for p in (sdl2.dep_bins + glew.dep_bins)],
strip=False,
upx=True,
name='EskapAid')
我不介意提供任何其他必要的信息,包括我可能采取的其他步骤,但目前,我很困惑为什么它不能正确启动。在
尝试从控制台运行应用程序,以便可以查看与失败启动相关的错误消息;如果单击.exe打开它,则当应用程序关闭时,控制台将立即消失,这使得很难看到这些错误。很可能,您将看到应用程序未能启动,因为它缺少包,您可以将这些包添加到hiddenimports列表下的.spec文件中。请查看这个post,了解为什么需要这样做。在
相关问题 更多 >
编程相关推荐