0

我遇到了以下问题。我有一个具有以下结构的包:

B.app/Contents/Frameworks -> 链接到现有的 FS 位置 [1]
B.app/Contents/Info.plist
B.app/内容/MacOS
B.app/Contents/MacOS/AliasBinary -> 链接到名为 ExistingBinary [2] 的现有二进制文件
B.app/Contents/Resources -> 链接到现有的 FS 位置 [3]

链接 [1] 和 [3] 只是指向捆绑包之外的现有文件系统位置(即目录)的链接。AliasBinary是指向另一个应用程序的链接,我不想将它复制到包中,但想在多个包之间共享它。后一个二进制文件称为ExistingBinary

我遇到的问题是打电话

$ open B.app

确实会打开应用程序,但前提是ExistingBinary的前一个实例未运行。这同样适用于双击 B.app。如果没有运行ExistingBinary的先前实例,则一切正常。启动ExistingBinary后,我无法再通过双击或调用来启动 B.appopen B.app

帮助!

编辑:

有趣的事实是,如果捆绑包位于 /Applications 内,一切正常,但是当我将它移到 /Applications 之外时,它只会恢复对应用程序第一个实例的关注。

open -n 有帮助,但这不是我想要的:)

4

1 回答 1

0

这可能是不打开现有应用程序两次的默认启动服务行为。

在 Leopard 中,尝试

open -n B.app 

或者如果您有启动实用程序:

launch -m B.app
于 2009-07-14T23:35:43.217 回答