科尔多瓦 在构建 ios 时"Export Failed"错误代码 70



我目前正在使用CordovaPhonegap为iOS构建应用程序。它工作正常,但现在我在终端中运行cordova build ios时出现错误。

我收到以下错误:

**

导出失败 **

错误:命令的错误代码 70:xcodebuild with args:-exportArchive,-archivePath,RoastBot.xcarchive,-exportOptionsPlist,/Users/JarrodMorgan/Desktop/RoastBot/platforms/ios/exportOptions.plist,-exportPath,/Users/JarrodMorgan/Desktop/RoastBot/platforms/ios/build/device

任何帮助不胜感激!

这是由于 Xcode 9 期望 exportOptions.plist 中的某些值位于错误消息中显示的路径中。在您的情况下,它是,/Users/JarrodMorgan/Desktop/RoastBot/platforms/ios/exportOptions.plist.

以下是exportOptions.plist对我的看法:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>compileBitcode</key>
<false/>
<key>method</key>
<string>development</string>
<key>teamID</key>
<string>TEAM_ID_GOES_HERE</string>
<key>provisioningProfiles</key>
<dict>
<key>YOUR_BUNDLE_ID</key>
<string>PROVISIONIG_PROFILE_UUID_WOULD_BE_HERE</string>
</dict>
<key>signingStyle</key>
<string>manual</string>
<key>signingCertificate</key>
<string>iPhone Developer</string>
</dict>
</plist>

仔细检查您的exportOptions.plist中是否有provisioningProfilessigningStyle值,如果没有,那么您可能在4.5.2之前cordova-ios版本。这已修复并在cordova-ios 4.5.2发布,请参阅此 PR

为了解决此错误,请将cordova-ios更新为4.5.2或更高版本,请删除插件和平台并重新添加它们。

但是,在升级到cordova-ios 4.5.4的情况下,我开始看到以下错误:

ld: 270 duplicate symbols for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

事实证明,这是由于cordovacordova-plugin-console内置到其核心中,如果您的项目中有该插件,则可能会收到上述错误。只需删除cordova-plugin-console,此错误就会消失。以下是它在控制台插件的 github 页面上所说的:

此插件不再作为提供的功能工作 通过此插件现在包含在Cordova-iOS 4.5.0或更高版本中,并且 Cordova-Windows> 5.0.0 中已经内置了支持。你应该 从应用程序中删除此插件。

这是文档的链接。

您可以通过返回到旧的PhoneGap版本来解决此问题。 将此添加到您的配置.xml文件

<preference name="phonegap-version" value="cli-6.3.1" />

最新更新