2011-01-19 38 views
2

我有一个Cocoa应用程序的目标和shell工具目标的XCode项目。这些项目共享一个核心数据持久存储,因此我希望两个项目都使用相同的* .mom文件。的XCode:多目标在同一捆

要允许此并简化部署我想终端应用到放置在可可应用程序束的内部,然后同时具有可执行程序从束内部访问同一* .mom文件。

是否可以设置XCode项目,以便将终端应用程序放入Cocoa应用程序包中,然后让终端应用程序加载Cocoa应用程序的主包以获取此共享* .mom的路径?

+0

我想我可能只是下井具有可可应用程序共享资源复制到应用程序支持目录上的第一次运行,然后简单地从那里,而不是引用它们的线。 shell工具的可执行文件可以在第一次运行时复制到/ usr/local/bin这样的位置,因此Cocoa应用程序实质上部署了资源和其他可执行文件本身 – 2011-01-19 15:26:04

回答

4

你应该可以做你想做的。

1)使Cocoa应用程序目标依赖于终端应用程序目标:单击可可目标,获取信息,常规选项卡,然后单击直接依赖关系窗格下的“+”,然后选择终端目标。

2)添加“复制文件”建立阶段的可可目标:目标点击右键,添加 - >新建构建阶段 - >新建复制文件生成阶段。你会得到一个信息窗口,您可以在其中选择副本的目的地;我推荐默认的“资源”。

3)从项目的导航窗格到您刚才创建的复制文件生成阶段“产品”文件夹)拖动终端应用建立产品(。这会导致终端应用程序被复制到Cocoa应用程序的资源文件夹中,这是您的.mom文件默认情况下在生成时的位置。

4)在您的可可代码,您可以通过查询主束的路径与终端应用程序的名称和扩展资源找到路径或URL到终端应用。您的终端应用程序需要发现从其启动的目录以在同一目录中查找.mom文件。

希望这是有帮助的。

+0

啊是的,我没有想到简单地让终端应用程序确定其目录并使用该路径。感谢有关将构建产品添加到应用程序包的详细说明! – 2011-01-19 16:22:32