报错信息:
error: exportArchive: "JenkinsTest.app" requires a provisioning profile.
Error Domain=IDEProvisioningErrorDomain Code=9 ""JenkinsTest.app" requires a provisioning profile." UserInfo={NSLocalizedDescription="JenkinsTest.app" requires a provisioning profile., NSLocalizedRecoverySuggestion=Add a profile to the "provisioningProfiles" dictionary in your Export Options property list.}
报错原因:
使用xcode打包时, 可以分为两步, 第一步是archive.
archive成功后需要导出ipa.
从archive成功后到导出ipa可以分为以下几个步骤:
导出ipa步骤1
导出ipa步骤2
导出ipa步骤3
导出完成后, 我们可以在导出的文件夹下看到一个 ExportOptions.plist文件, 这个文件就是 步骤 1/2/3 三个步骤的配置过程中的设置项, 如图
步骤 1/2/3 都会在Jenkins 的xcode的配置时有涉及, 这样在archive成功后, 也会生成一个 配置导出选项的plist文件, 导出ipa时 会根据这个plist文件, 进行导出ipa. 该plist文件,目录如下:
这个plist里应该有一个配置描述文件的字段. 如图:
而该错误就是由于这个plist文件没有配置这个导出时的描述导致的. 具体配置和解决方法见下文.
解决方法:
在项目xcode构建 配置时, 在Code signing & OS X keychain options选项卡中, 选中 Manual singing(手动配置), 然后注意UUID配置描述文件的名称即可. (该配置相当于 使用xcode导出ipa时的步骤3的配置)
value (UUID)的获取如图:
按照以上配置, 再进行打包即可.