ios – Xcode:如何使xcodebuild构建一个包含子项目的项目

我有一个 Xcode项目,它包含几个子项目(编译为lib文件的框架项目)作为主项目的一部分.该项目在Xcode中正确编译/构建(从hyarchial树的底部到主app项目正确构建子项目).

我现在正在尝试为持续集成设置项目,当我尝试使用xcodebuild从命令行构建时…由于没有找到应该在主项目之前构建的.a文件,构建失败.

我可以独立地从cmd行构建每个lib文件,但整个合并项目失败.即使我在目标方案中正确管理了依赖项,并且如果我在使用xcodebuild时指定目标或方案,它仍然不会构建子项目.

有没有办法让xcodebuild构建子项目,然后像Xcode IDE一样构建主项目?如果没有,如果我将整个项目转换为工作区,这会有效吗?

任何帮助或建议将不胜感激.我在Mavericks上运行Xcode 5.1.1.

解决方法

解决方案很简单…使用“-scheme”标志而不是“-target”允许项目正确构建(所有子项目/框架然后目标应用程序)

失败:

xcodebuild -project MyProject.xcodeproj -target MyProject -sdk "iphoneos" -configuration “Build” archive OBJROOT=../../build_iOS/Obj.root SYMROOT=../../build_iOS/Sym.root

如预期的那样:

xcodebuild -project MyProject.xcodeproj -scheme MyProject -sdk "iphoneos" -configuration “Build” archive OBJROOT=../../build_iOS/Obj.root SYMROOT=../../build_iOS/Sym.root

无需将项目转换为工作区.

相关文章

UITabBarController 是 iOS 中用于管理和显示选项卡界面的一...
UITableView的重用机制避免了频繁创建和销毁单元格的开销,使...
Objective-C中,类的实例变量(instance variables)和属性(...
从内存管理的角度来看,block可以作为方法的传入参数是因为b...
WKWebView 是 iOS 开发中用于显示网页内容的组件,它是在 iO...
OC中常用的多线程编程技术: 1. NSThread NSThread是Objecti...