我创建了一个应用程序包,其中包含一个shell脚本作为主要可执行文件。 然后运行“exec / path / to / other / executable”作为其最后一个操作。 (原因是我通过更新系统下载新的可执行文件,我不想写入通常位于/ Applications中的应用程序包。而是将更新写入用户目录,并且旨在让应用程序捆绑本身只是一种发射器)
问题是,这使得OS X认为bundle目录是第二个可执行文件所在的目录。这导致它不尊重Info.plist和各种不良。 (如果我将真正的可执行文件移动到捆绑包的MacOS文件夹中,一切都很好,但正如我所说,这不是一个真正的选项)
本指南让我相信这样的事情是可能的: http://mjhutchinson.com/journal/2010/01/24/creating_mac_app_bundle_for_gtk_app
这里他们运行“exec mono ...”作为他们的shellcript中的最后一个动作,其中“mono”是一个位于应用程序包之外的二进制文件。而且我认为他们的捆绑最终表现得很好。
那么这可能吗?