构建机器无法识别配置文件

Posted

技术标签:

【中文标题】构建机器无法识别配置文件【英文标题】:Build machine does not recognize a provisioning profile 【发布时间】:2014-04-23 08:40:50 【问题描述】:

我正在使用远程 mac 机器作为构建机器, 我没有root权限。

我正在尝试通过将我的文件复制到文件夹中来使用配置文件:~/Library/MobileDevice/Provisioning Profiles 它的 UUID 作为文件名(和 .mobileprovision 作为扩展名) 当我运行构建并将 UUID 指定为 PROVISIONING_PROFILE 参数时,我得到:

Code Sign error: No matching provisioning profile found: Your build settings specify a provisioning profile with the UUID “xxx”, however, no such provisioning profile was found.

我在here 中看到一个线程,通过复制到"/Library/MobileDevice/Provisioning Profiles"/Library/Server/Xcode/Data/ProvisioningProfiles 来解决它 但由于我没有root访问权限,所以我不能这样做。

我正在使用 xcode-5.0.2。

我发出的构建命令是: xcodebuild -configuration Distribution SDKROOT=pathTo/iPhoneOS7.0.sdk SYMROOT=somePath DSTROOT=somePath INSTALL_PATH=somePath 'CODE_SIGN_IDENTITY[sdk=iphoneos*]=iPhone Distribution: someName' OTHER_CFLAGS=-DINHOUSE_DEPLOY=1 PROVISIONING_PROFILE=xxx

是否有任何已知的解决方法? 如何让 xcodebuild 工具了解此配置文件?

谢谢

【问题讨论】:

【参考方案1】:

在文本编辑器中打开配置文件并在那里找到UUID 标签:

<key>UUID</key>
<string>1A85CBE4-6DBE-4414-B361-98B0B2C47E43</string>

PROVISIONING_PROFILE参数设置UUID标签值。 就我而言,它看起来像:

PROVISIONING_PROFILE=1A85CBE4-6DBE-4414-B361-98B0B2C47E43

【讨论】:

不好,我得到:代码签名错误:未找到匹配的配置文件:您的构建设置指定了 UUID 的配置文件“/Users/name/Library/MobileDevice/Provisioning Profiles/xxx.mobileprovision ”,但是,没有找到这样的配置文件。好像这个参数是针对 UUID 的。 @sagioto 你用什么工具来构建项目? 您能否提供带有所有参数的 xcodebuild 调用的整个代码行? @sagioto 由于您的问题中有新信息,我已经完全更新了我的答案。请尝试一下。 @sagioto 您是否尝试通过 Xcode 在目标配置中设置配置文件并从 xcodebuild 调用中删除参数 PROVISIONING_PROFILE?

以上是关于构建机器无法识别配置文件的主要内容,如果未能解决你的问题,请参考以下文章

VS程序编译通过,jenkins构建错误,无法识别新的语法,应该是 .NetFramework的问题,不知道应该如何处理

Xamarin Studio 无法识别配置文件

/usr/bin/ld:构建调试/obj/gpsitem.o:文件无法识别:文件被截断

无法链接 OpenGL 兼容性配置文件(无法识别 EXT 符号)

使用 Xcode 6.0.1 构建后,Game Center 无法识别应用程序

时间机器磁盘无法识别