我目前正在使用Cordova Phonegap为iOS构建应用程序。它工作正常,但现在我在终端中运行cordova build ios
时出现错误。
我收到以下错误:
**导出失败**
错误:命令的错误代码70:带有args的xcodebuild:-exportArchive,-archivePath,RoastBot.xcarchive,-exportOptionsPlist,/ Users / JarrodMorgan / Desktop / RoastBot / platforms / ios / exportOptions.plist,-exportPath,/ Users / JarrodMorgan /桌面/ RoastBot /平台/ IOS /建造/装置
感谢任何帮助!
答案 0 :(得分:4)
这是由于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>
仔细检查provisioningProfiles
中是否有signingStyle
和exportOptions.plist
值,如果您还没有cordova-ios
版本4.5.2
之前的版本cordova-ios 4.5.2
}。这已修复并在cordova-ios
中发布,请参阅此PR
为了解决此错误,请将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)
后的情况下,我开始看到以下错误:
cordova
事实证明,这是因为cordova-plugin-console
将cordova-plugin-console
构建到其核心,并且如果您的项目中有该插件,则可能会导致上述错误。只需删除{{1}},此错误就会消失。以下是它在控制台插件的github页面上所说的内容:
此插件不再作为提供的功能进行处理 通过这个插件现在包含在cordova-ios 4.5.0或更高版本中,并且 支持已经内置于cordova-windows&gt; 5.0.0。你应该 从您的应用程序中删除此插件。
答案 1 :(得分:2)
您可以通过返回旧的PhoneGap版本来解决此问题。 将其添加到config.xml文件
<preference name="phonegap-version" value="cli-6.3.1" />