在Xcode方案中随机添加构建目标

7
我正在使用Xcode 5和CocoaPods开发iPhone应用程序。我有一个名为Oahu的方案和目标,我对其进行测试。因此,在方案的构建阶段中,我不惊讶地看到我的两个测试目标被列出。然而,有一个第四个构建目标无法删除:
当我运行测试时,所有四个目标都会被构建,并且测试目标会针对最后一个错误的目标Ku运行。
即使在关闭Xcode、删除DerivedData目录的内容以及删除项目目录中的所有*userdata文件(find ./ | grep userdata | xargs rm -rf)之后,我仍然有一个多余的构建目标:
请注意,它现在包括我的Production目标,我还取消了查找隐式依赖项的复选框。
我已经查看了所有的构建设置、Oahu.xcscheme和project.pbxproj,但是我找不到任何导致这种行为的原因。取消方案的Build Option中的Find Implicit Dependencies没有效果。
这个Oahu方案是唯一有这个问题的方案——Ku和Production方案只有对应的目标——尽管如果我复制Oahu方案,则也存在这个问题。
这个问题能修复吗?
3个回答

9

我发现我的所有构建和测试问题都与具有相同二进制名称有关。将每个目标产生的二进制文件重命名为唯一的名称可以解决问题。


抱歉,我对这个答案有点迷惑...你所说的“二进制名称”具体指的是什么? - mbpro
1
我认为他指的是产品名称。我尝试使用产品名称,现在对我来说似乎可以工作了。 - xarly
是的,将产品名称设置为所有构建配置相同,你就没问题了。 - Steve Potter
那么,如果我想要相同的产品名称,例如用于AppStore和零售版本构建呢? - user187676

3
在我的情况下,是因为目标文件在我的测试目标的构建阶段的目标依赖项列表中。

3

我刚遇到了相同的问题。在我的情况下,附加目标出现在方案目标的构建设置中。您可以在那里搜索不需要的目标名称,我在BUNLDE_LOADER和TEST_HOST下找到了我的目标。删除这些设置后问题得以解决。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接