使用xcodebuild命令时团队/配置文件错误

时间:2018-11-05 10:16:46

标签: objective-c xcode xcode10

我试图在我的xcode项目上构建一个持续集成的脚本,但是我一直试图使用xcodebuild命令归档我的xcode项目。尝试时:

sudo xcodebuild -scheme MyScheme -archivePath builds/XXX.xcarchive archive DEVELOPMENT_TEAM=YYY CODE_SIGN_IDENTITY='iPhone Distribution' CODE_SIGN_STYLE='Manual' PROVISIONING_PROFILE_SPECIFIER=ZZZ
  • XXX是我的项目名称

  • YYY是我的开发团队标识符,就像ABC123DEF一样,它是一个字符串

  • ZZZ是我的预配置文件名称,不是代码而是字符串,例如“我的预配置文件”

我总是会收到此错误:

error: No profile for team 'YYY' matching 'ZZZ' found: Xcode couldn't find any provisioning profiles matching 'YYY/ZZZ'. Install the profile (by dragging and dropping it onto Xcode's dock item) or select a different one in the General tab of the target editor. 

但是,当手动打开XCode项目并尝试存档时,它可以完美地工作。

我想念什么?如何在Mac上安装 team / provisionning_profile 的完整列表?

到目前为止,我已经尝试过:

  1. 我尝试删除了指定开发团队和配置概要文件的部分,仅保留了方案标识符。使用相同的信息定义考虑该方案的相同结果。

  2. 我尝试进入我的mobileprovision文件夹以检查配置文件是否存在(存在)

  3. 我试图在编辑器中(在“报表导航器”选项卡上)显示xcode归档命令行。实际上,它从不直接显示xcodebuild命令,而是一堆子命令。但是我发现我在此脚本中使用的我的XXX团队标识符和YYY设置配置文件

有人知道我可以解决这个问题吗?

2 个答案:

答案 0 :(得分:1)

我终于找到了问题,它来自sudo之前的xcodebuild

默认情况下,sudo命令将在root用户下运行以下操作,该用户未安装任何配置文件,因为我总是在用户配置文件下注册它们。

这是我所做的:

sudo -u myuser xcodebuild -scheme MyScheme -archivePath builds/XXX.xcarchive archive DEVELOPMENT_TEAM=YYY CODE_SIGN_IDENTITY='iPhone Distribution' CODE_SIGN_STYLE='Manual' PROVISIONING_PROFILE_SPECIFIER=ZZZ

,错误消失。 希望这可以帮助某人。

答案 1 :(得分:0)

配置文件位于~/Library/MobileDevice/Provisioning Profiles/

您可以添加-allowProvisioningUpdates来允许xcodebuild“解决”问题本身,但是... __(ツ)_ /¯表示结果的安全性/良好程度。您已指定“手动”,因此我认为您不想这样做。

我怀疑您正在尝试归档项目,但仅安装了开发配置文件。从Xcode中构建项目的Release版本,应该可以为您下载项目的发布(分发)配置文件,然后可以从命令行使用它。