是否可以在Xcode 6.1中配置目标的构建阶段,以便在编译源阶段之前可以发生复制文件阶段?
答案 0 :(得分:10)
据我所知,没有办法在Xcode中使用GUI重新排序项目。您可以通过编辑project.pbxproj
文件来完成此操作。
如果您在某个文本编辑器(而不是Xcode)中打开该文件并搜索类似
的内容构建PBXNativeTarget的配置列表
你会找到像这样的部分
/* Begin PBXNativeTarget section */
9BDEC0D019881B9400AE439B /* MyProject */ = {
isa = PBXNativeTarget;
buildConfigurationList = 9BDEC0F019881B9400AE439B /* Build configuration list for PBXNativeTarget "MyProject" */;
buildPhases = (
6111D3671B56D2BB00DD7431 /* Show TODOs and FIXMEs as Warnings */,
BAEE6F558B6BDB326F5B8D1F /* Check Pods Manifest.lock */,
9BDEC0CD19881B9400AE439B /* Sources */,
9BDEC0CE19881B9400AE439B /* Frameworks */,
4C47C03A1ABD4DFE00D317B5 /* Copy baked database to bundle sqlite */,
9BDEC0CF19881B9400AE439B /* Resources */,
CDF5E3A80B5FDFCEA41B67FD /* Embed Pods Frameworks */,
CF995761C5EAA8D1AAEBA463 /* Copy Pods Resources */,
);
buildRules = (
);
dependencies = (
9B832FED19B76A45006D3347 /* PBXTargetDependency */,
);
name = MyProject;
productName = MyProject;
productReference = 9BDEC0D119881B9400AE439B /* MyProject.app */;
productType = "com.apple.product-type.application";
};
您可以更改buildPhases
列表中的操作顺序。
看看我的列表中的第一件事是6111D3671B56D2BB00DD7431 /* Show TODOs and FIXMEs as Warnings */,
?这是我使用GUI添加的自定义构建阶段脚本,然后将该行移动到第一个使用Atom。重新打开GUI,这是“目标依赖关系”之后的第二个构建阶段(如其他答案中所述)。
答案 1 :(得分:7)
是
对于现有阶段,例如"复制"和"编译"在你的例子中:
注意:"目标依赖关系"阶段可能不会被重新排序(在撰写本文时)。
答案 2 :(得分:4)
在Xcode中,您可以重新排序GUI中的构建阶段(XCode 6.4和7.1 beta),但有时会以某种方式阻止UI。请尝试以下步骤以取消阻止用户界面:
答案 3 :(得分:0)
使用XCode 7.1.1(也许存在于XCode 7中)来解决这个问题。我无法将最近添加的Run Scripts拖到任何地方,但发现我可以将现有的项目拖到底部。所以,如果我的项目是
A
B
C
D (New runscript)
我想把D放在A下面,先把B拖到底部
A
C
D
B
然后将C拖到底部
A
D
B
C
希望能有所帮助。