我使用PyInstaller为我的python2.7包构建一个mac os x app包。双击应用程序图标会立即弹出控制台窗口,但会立即消失。但是,双击展开的“内容/ MacOS /可执行文件”会正确弹出预期的窗口。
以下是我展开的应用内容的屏幕缩写。 Frameworks文件夹为空,Resources文件夹包含图标,MacOS文件夹包含所有二进制库和可执行文件(如上所述运行正常)。不确定修改info.plist是否有帮助。
答案 0 :(得分:2)
您是否尝试使用-w
标志?来自文档:
-w, --windowed, --noconsole
使用窗口化子系统可执行文件,在Windows上,程序启动时不会打开控制台。在Mac OS X上创建.app软件包时必须使用此选项。
答案 1 :(得分:0)
我不确定这意味着什么:“应用程序只是背景=是”?
我尝试使用我的应用程序foo和... 947构建的Pyinstaller(最近的开发版本)来复制你的问题。我使用了--onefile --windowed args到Pyinstaller。我发现在Finder中,双击build / foo启动一个控制台,然后出现应用程序窗口。虽然双击bundle build / foo.app似乎没有启动控制台,但我的应用程序窗口出现了。换句话说,它对我有用。
另一方面,我尝试了另一个打包器:Whitebox Packages在创建包时,我将pyinstaller / foo / build / foo文件(可执行文件)放入包中。等''Packages'为我创建了一个.mpkg文件,我安装了它。然后,当我调用我的应用程序时,会出现一个控制台,它们就是我应用程序的窗口。 (这不好,我不想要一个控制台。)我不明白该软件包的哪些属性使应用程序在没有控制台的情况下启动。我不认为可执行文件包含启动控制台的shell,它必须是启动控制台的OSX。
由于存在其他工具,因此正确地进行“分发包装”并不是PyInstaller项目的高优先级。