同时使用不同的Xcode选择值的Xcode命令行构建

时间:2018-06-29 16:36:13

标签: xcode bamboo

我们的构建服务器已安装了多个版本的Xcode。我们的构建脚本使用xcode-select选择正确的版本。一切都很好。

我们的某些版本需要一段时间才能运行。我们正在考虑允许在同一构建服务器上同时进行多个构建(Bamboo代理)。我担心的是,在不同(但同时)构建中使用xcode-select会导致争用情况。如果第二个构建开始并需要该版本,则以Xcode 9.4.1开头的构建可能会切换到Xcode 10.0中间构建。

我唯一的想法是使用VM的/新机器来并行化构建。

我很好奇是否有人处理过这种情况。谢谢。

2 个答案:

答案 0 :(得分:0)

您可以尝试使用xcrun而不是xcode-select来调用您的xcodebuild。并发构建时,您可能会发现自己的构建竞争系统资源...

答案 1 :(得分:0)

您可以设置DEVELOPER_DIR环境变量,而不用使用xcode-select切换活动的Xcode。

xcode-select手册页中:

  

环境

     

DEVELOPER_DIR

     

覆盖活动的开发人员目录。设置DEVELOPER_DIR时,将使用其值代替系统范围的活动值   开发人员目录。

     

请注意,由于历史原因,开发人员目录被视为Xcode中的开发人员内容目录   应用程序(例如    /Applications/Xcode.app/Contents/Developer )。您可以将环境变量设置为实际的开发人员内容   目录或Xcode应用程序目录-   xcode-select提供的垫片将自动转换   环境变量进入完整的Developer内容路径。