(补充: 基于Xcode 9,用此方案持续集成 iOS 项目,会出错.由于插件的维护者不再及时维护,笔者换了另一种简单的集成方案:基于 Xcode 9+,利用fastlane+jenkins持续集成iOS项目---2017-9-27)
apple 在 2017.3.28 推送 iOS 10.3版本, 开发者工具 Xcode 也升到8.3版本.升级 Xcode 后,发现 jenkins 不能继续集成原来的 iOS 项目,错误如下:
xcrun: error: unable to find utility "PackageApplication", not a developer tool or in PATH
在 xcode-plugin 的 github 上可以看到原因,大致意思就是:"Xcode 废弃了原来的打包方式".
在经过一个多月的维护, jenkins 的维护人员推出了 xcode-plugin 的2.0.0版本.(2017.5.24)
我测试了xcode-plugin 的2.0.0版本后,发现和原来的1.4.11在几处配置不同,以下是配置的过程:
1.首先默认你已经搭建了 java 环境,并且已经安装了 jenkins.
(如果没有,请参考 史上最全Jenkins+SVN+iOS+cocoapods环境搭建及其错误汇总)
2.进入 jenkins, 点击 系统管理 菜单, 然后点击右侧的 管理插件,如下图:
3.在可选插件里, 安装 xcode integration 和 keychains and Provisioning Profiles Management 这两个插件。
4.安装完成后,回到 jenkins 主界面,点击 系统管理 菜单.然后点击右侧的 系统设置 , 如下图:
5.安装 Xcode 插件后,会在打开的界面看到 Xcode Builder, 然后在 Apple Development Teams 的下级菜单里,点击 增加 按钮, 将你的开发团队 名字和 ID(10位的数字/字母组合, ID可以进入 苹果开发者网站 查询).
6.为 keychains and Provisioning Profiles Management 添加 login.keychain 和 描述文件.
将 /Users/xiaoming(此处是你自己的用户名,比如:xiaoming)/Library 文件夹下的 Keychains 和 MobileDevice 复制到 /Users/Shared/Jenkins/Library 文件夹下.(用户名下的资源库默认是隐藏的,显示隐藏文件夹的快捷键 shift + command + .)
结束上述步骤, 回到 jenkins 主界面,点击系统管理菜单.然后点击右侧的keychains and Provisioning Profiles Management, 如下图:
进入 keychains and Provisioning Profiles Management 界面后, 开始上传 login.keychain 和 描述文件.
首先进入 /Users/Shared/Jenkins/Library/Keychains 目录下, 选择 login.keychain, 点击上传.(如果是 macOS 比较高版本的系统, 默认是login.keychain-db, 插件默认不能上传login.keychain-db, 直接重命名为 login.keychain,点击上传.上传结束后进入/Users/Shared/Jenkins/Library/Keychains 目录下,双击运行 login.keychain, 自动变成 login.keychain-db,如果没有双击运行,后续可能访问开发者证书报错)
上传 login.keychain 结束后, 接着添加开发者证书的名字(将 开发者证书的名字 复制粘贴到输入框内).
点击钥匙串访问,可以查看/复制开发者证书名字.
然后进入 /Users/Shared/Jenkins/Library/MobileDevice/Provisioning Profiles 目录下, 选择 项目的描述文件,点击上传.
上传结束后, 点击 save/保存 按钮.
7.上面的前期工作已经准备好了,直接配置项目.这里假设你已经构建了一个自由风格的项目.
svn/git 拉取代码的配置步骤省略,直接配置 构建环境:
红框内的都是选择项,不是填写项,选择 开发证书名字 和 匹配的描述文件.
增加 Xcode 构建步骤:
设置 Keychain path 时,路径是固定的,直接复制:${HOME}/Library/Keychains/login.keychain
接着设置 Advanced Xcode build options :
在 "Advanced Xcode build options" ===> "Xcode Schema File"中填写 你项目的scheme.
最后,增加构建后操作步骤,选择 Archive the artifacts,可以将打包好的 ipa 呈现在当前页面,方便 测试同事 点击下载.点击 保存,然后开始构建项目.
如果您在使用过程中发现有误,欢迎及时指正.
参考:史上最全Jenkins+SVN+iOS+cocoapods环境搭建及其错误汇总 (多谢作者的细心总结)