我在构建时遇到机器人偶尔会失败的问题。
预构建操作用于安装 pod,这在某些时候效果很好。但是,当集成失败时,这是因为此错误:
Installing Pods
Analyzing dependencies
Downloading dependencies
[32mInstalling AFNetworking (1.3.3)[0m
...
2014-03-07 10:40:25.667 xcodebuild[76637:100b] [MT] IDEFileReferenceDebug: [Load] <IDEFileReference, 0x7fa3fe5b0840: group:Pods/Pods.xcodeproj> Failed to load container at path: /Library/Server/Xcode/Data/BotRuns/Cache/5bbd629b-a843-42b0-8b52-256db7560be5/source/Pods/Pods.xcodeproj, Error: Error Domain=Xcode3ProjectErrorDomain Code=2 "Project /Library/Server/Xcode/Data/BotRuns/Cache/5bbd629b-a843-42b0-8b52-256db7560be5/source/Pods/Pods.xcodeproj cannot be opened because it is missing its project.pbxproj file." UserInfo=0x7fa3fe7e54b0 {NSLocalizedDescription=Project /Library/Server/Xcode/Data/BotRuns/Cache/5bbd629b-a843-42b0-8b52-256db7560be5/source/Pods/Pods.xcodeproj cannot be opened because it is missing its project.pbxproj file.}
Generating Pods project
Integrating client project
所以我的猜测是 xcodebuld 尝试在生成之前读取 Pods 项目。
这听起来像是一个合理的猜测吗?
有谁知道如何解决它?
编辑
Action 前构建脚本看起来是这样的
cd $SRCROOT
export LC_ALL="en_US.UTF-8"
if [ -d Pods ]
then
echo "Updating Pods"
pod update
else
echo "Installing Pods"
pod install
最佳答案
当您的 SVN 没有跟踪 pod 项目时,CocoaPods 通常对 Xcode 机器人来说真的不可靠。我也没有跟踪 pod 项目,并且与 CocoaPods 有类似的麻烦。如果您正在寻找临时修复程序,可以转到 /Library/Server/Xcode/Data/BotRuns/Cache/5bbd629b-a843-42b0-8b52-256db7560be5/source/
,从那里运行 pod install 并删除预构建脚本。但是,如果您更新 Podfile 或 Podfile.lock,则必须再次在服务器上手动运行 pod install/pod update。
关于continuous-integration - 与 XCode bots 和 cocoapods 的持续集成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22249906/