使用 xcodebuild 命令行工具导出失败错误

Posted

技术标签:

【中文标题】使用 xcodebuild 命令行工具导出失败错误【英文标题】:EXPORT FAILED error using xcodebuild command line tool 【发布时间】:2015-11-24 18:27:27 【问题描述】:

我正在尝试通过 xcodebuild 导出 ipa 文件,但总是收到此错误。

IDEDistribution: 步骤失败: : Error Domain=IDEDistributionErrorDomain Code=14 "No 找到适用的设备。” UserInfo=NSLocalizedDescription=No 找到适用的设备。 错误:exportArchive:没有适用的设备 找到了。

Error Domain=IDEDistributionErrorDomain Code=14 "没有适用的设备 找到。" UserInfo=NSLocalizedDescription=未找到适用的设备。

** 导出失败 **

有什么提示吗?

这是我正在使用的 shell 脚本(通过sh export_script.sh 在终端中运行)

xcodebuild clean -project 'MyProject.xcodeproj' -configuration Debug -scheme MyProject -alltargets
xcodebuild -project 'MyProject.xcodeproj' -scheme MyProject archive -archivePath 'MyProject.xcarchive'
xcodebuild -exportArchive -archivePath 'MyProject.xcarchive' -exportPath 'Export' -exportOptionsPlist 'Options.plist'

附:指出我的脚本中的任何错误(如果存在)。

【问题讨论】:

xcodebuild: "No applicable devices found." when exporting archive的可能重复 【参考方案1】:

我不确定,但可能你应该指定你需要一个设备的构建。

【讨论】:

【参考方案2】:

您需要添加适当的值-sdk(取决于iphoneos的版本号)

【讨论】:

【参考方案3】:

旧的方法似乎可以完成这项工作。

xcodebuild -exportArchive -archivePath $XCODE_ARCHIVE -exportPath $EXPORT_PATH -exportFormat ipa -exportProvisioningProfile "$PROVISIONING_PROFILE" -configuration $CONFIGURATION

其中$PROVISIONING_PROFILE 是例如ios Development。存档已正确创建。 shell 将打印出弃用日志。您可以放心地忽略它。

Xcode 引入的新方法不起作用(至少对我而言)。见xcodebuild's new exportOptionsPlist flag。

如果您有任何使用新方式的提示,请发布。

编辑

有一个开放的雷达Open Radar。另外,Fastlane 也为这个问题提供了一种回退机制(见Export Failed with Xcode 7 - No applicable devices found)。

【讨论】:

【参考方案4】:

就我而言,问题与使用 RVM 有关。切换到系统 Ruby 解决了这个问题:

rvm use system 

xcodebuild 的某些部分这样的接缝依赖于 Ruby 的系统版本,不能很好地与 RVM 配合使用。

【讨论】:

以上是关于使用 xcodebuild 命令行工具导出失败错误的主要内容,如果未能解决你的问题,请参考以下文章

使用 xcodebuild 从 archive 导出 ipa

命令行工具 - 错误 - xcrun:错误:无法找到实用程序“xcodebuild”,不是开发人员工具或 PATH

无法在安装了命令行工具的 Mavericks 上使用 xcodebuild

Xcode 4 UI 可以很好地构建应用程序,但命令行 xcodebuild 在代码签名时失败

使用带有 PROVISIONING_PROFILE 的 xcodebuild 命令行签署应用程序失败

使用 Xcode 的命令行构建工具存档(xcodebuild 存档)