【发布时间】:2019-03-01 19:26:01
【问题描述】:
我有用于自动构建具有两个目标的 iOS 项目的 Jenkins 服务器。
使用命令行实用程序 xcodebuild 构建项目。
完整的命令是
/usr/bin/xcodebuild -workspace “我们的项目.xcworkspace” -方案“第一个目标” -配置发布 档案 DEVELOPMENT_TEAM=团队代码 -allowProvisioningUpdates和
/usr/bin/xcodebuild -workspace “我们的项目.xcworkspace” -方案“第二个目标” -配置发布 档案 DEVELOPMENT_TEAM=团队代码 -allowProvisioningUpdates在我将 Xcode 更新到版本 10 之前,它运行良好。但是每次更新后我都看到错误
错误:Fabric:Info.plist 错误
无法处理路径 /Users/Shared/Jenkins/Library/Developer/Xcode/DerivedData/Our_project-xxxx/Build/Intermediates.noindex/ArchiveIntermediates/Our project/BuildProductsPath/Release-iphoneos/First application 的 Info.plist。应用程序/Info.plist 这可能是时间问题,请确保 Fabric 运行脚本构建阶段是最后一个构建阶段,并且没有其他脚本将我们的 application.app 从 Xcode 生成的位置移动。您还可以添加 '$(BUILT_PRODUCTS_DIR)/$(INFOPLIST_PATH)' 作为 Fabric 运行脚本构建阶段的“输入文件”依赖项。
** 存档失败 **
在谷歌搜索和阅读错误描述后,我确实在 Xcode 中打开了Build phases 选项卡并进行了设置(将Run script 项移到底部,检查Run script only when installing 并将$(BUILT_PRODUCTS_DIR)/$(INFOPLIST_PATH) 添加到输入文件并删除空的Run script项目)。
现在可以从命令行手动构建 - 似乎问题已解决。甚至 Jenkins 也确实建立了第一个目标!但是 secong 目标没有出现同样的错误。
我确实打开了项目,查看构建阶段选项卡,看到 Run script 项目移到上方,并且出现了新的空 Run script。
之后我做了实验:设置构建阶段,在 Xcode GUI 中重建项目,然后看到这些阶段再次重新排序。因此,它发生在构建期间或之后。
我该如何修复这个错误?
说,我可以从命令行手动订购构建阶段吗?如果是,我只是在 Jenkins 步骤中追加行。
另外:这个错误只出现在命令行构建中。当我从 Xcode GUI 构建项目时,它总是成功。
【问题讨论】:
标签: ios xcode xcode10 auto-build