Jenkins 中的 XcodeBuild 框架出现错误
Posted
技术标签:
【中文标题】Jenkins 中的 XcodeBuild 框架出现错误【英文标题】:XcodeBuild Framework in Jenkins Getting Error 【发布时间】:2017-06-20 00:30:33 【问题描述】:尝试在 Jenkins 中使用 XcodeBuild 构建框架。应该生成两个文件:
foo.bundle
foo.framework
如果我在命令行中构建,没问题:
xcodebuild -workspace foo.xcworkspace -sdk "iphoneos" -scheme "Framework"
但如果我在 Jenkins 中使用它,我会得到一个错误:
sh "xcodebuild -workspace \"$WORKSPACE/app/$env.PROJECT_XC_WORKSPACE_FILE\" -sdk \"iphoneos\" -scheme \"$schemeName\""
目标编译但最终失败:
❌错误: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool: 找不到文件:-lPods-FooSDKExternal
❌错误: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool: 文件:-lPods-FooSDKExternal 不是目标文件(不允许在 图书馆)
有人知道如何解决这个问题吗?
【问题讨论】:
【参考方案1】:这可能是因为您正在使用不同的工作目录。检查您的变量以查看是否 1.) 它们输出的文本与您的手动命令相同,以及 2.) 验证您使用的工作目录与手动命令行条目是否相同。
【讨论】:
我在 xcodebuild 命令前面添加了一个 cd 命令(在同一个 sh 调用中),cd 到正确的路径,但仍然得到相同的错误。检查了 sh 命令的输出,它看起来和在 bash 中调用的一样。 想通了:使它起作用的是将-sdk "iphoneos"
更改为-sdk "iphonesimulator"
。 :)以上是关于Jenkins 中的 XcodeBuild 框架出现错误的主要内容,如果未能解决你的问题,请参考以下文章
从 Jenkins 运行时 xcodebuild 失败(在终端中工作)
在 CI (Travis/Jenkins) 环境中使用 xcodebuild (Xcode 8) 和自动签名
xcodebuild 无法通过 Jenkins 启动“/Applications/Xcode.app/Contents/Developer/Tools/otest”