mac xcworkspace xcodebuild
2016-01-05 14:40
387 查看
xcodebuild
在介绍xcodebuild之前,需要先弄清楚一些在XCode环境下的一些概念【4】:Workspace:简单来说,Workspace就是一个容器,在该容器中可以存放多个你创建的Xcode Project, 以及其他的项目中需要使用到的文件。使用Workspace的好处有,1),扩展项目的可视域,即可以在多个项目之间跳转,重构,一个项目可以使用另一个项目的输出。Workspace会负责各个Project之间提供各种相互依赖的关系;2),多个项目之间共享Build目录。
Project:指一个项目,该项目会负责管理生成一个或者多个软件产品的全部文件和配置,一个Project可以包含多个Target。
Target:一个Target是指在一个Project中构建的一个产品,它包含了构建该产品的所有文件,以及如何构建该产品的配置。
Scheme:一个定义好构建过程的Target成为一个Scheme。可在Scheme中定义的Target的构建过程有:Build/Run/Test/Profile/Analyze/Archive
BuildSetting:配置产品的Build设置,比方说,使用哪个Architectures?使用哪个版本的SDK?。在Xcode Project中,有Project级别的Build Setting,也有Target级别的Build Setting。Build一个产品时一定是针对某个Target的,因此,XCode中总是优先选择Target的Build Setting,如果Target没有配置,则会使用Project的Build Setting。
弄清楚上面的这些概念之后,xcodebuild就很好理解了,官网上对其作用的描述如下:
xcodebuild builds one or more targets contained in an Xcode project, or builds a scheme contained in an Xcode workspace or Xcode project.
xcodebuild就是用了构建产品的命令行工具,其用法可以归结为3个部分:
可构建的对象
构建行为
一些其他的辅助命令
可以构建的对象有,默认情况下会运行project下的第一个target:
workspace:必须和“-scheme”一起使用,构建该workspace下的一个scheme。
project:当根目录下有多个Project的时候,必须使用“-project”指定project,然后会运行
target:构建某个Target
scheme:和“-workspace”一起使用,指定构建的scheme。
……
构建行为包括:
clean:清除build目录下的
build: 构建
test: 测试某个scheme,必须和"-scheme"一起使用
archive:打包,必须和“-scheme”一起使用
……
辅助命令包括:
-sdk:指定构建使用的SDK
-list:列出当前项目下所有的Target和scheme。
-version:版本信息
…...
关于xcodebuild更多详细的命令行请参见:https://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages/man1/xcodebuild.1.html
相关文章推荐
- Request failed: unacceptable content-type: text/html" AFNetworking - 芒果iOS开发
- UIView之endEditing方法
- yuicompressor 与 maven结合,打包,压缩js,css
- Java [Leetcode 232]Implement Queue using Stacks
- Java [Leetcode 232]Implement Queue using Stacks
- LinkedBlockingQueue的put,add跟offer的区别(转)
- Arduino PWM的探究
- UML建模之时序图(Sequence Diagram)
- Leetcode215: Distinct Subsequences
- HDU 4027 Can you answer these queries?(线段树)
- UISearchBar光标偏移设置
- break与continue区别
- 让UI失业的网站,各种安卓常用图标。
- IOS开发UI篇--YXFilmSelectView(一个酷炫的电影选票View)
- 修改ligerui 默认确认按钮
- 基于Android 下载文件时,更新UI简单帮助类
- suid和sgid的个人理解
- 【UI布局优化】Hierarchy Viewer-优化你的UI
- Hbuilder的mui
- 构建本地yum源之rpmbuild