我正在开发一个最初在Xcode 8.3和Swift 3.2中启动的项目,在Xcode 9(稳定版本)发布后,我使用Xcode 9中的内置选项将我的项目从Swift 3.2转换为Swift 4.0。还转换了像Alamofire,SwiftyJson等等的吊舱。我还使用pod update
命令更新了所有广告连播
一切都在模拟器和iPhone上运行良好但是当我尝试存档项目时,存档过程失败,错误如下所示。Error Image1
Error Image2
我已尝试过所有可能的解决方案,例如更改Target&的 Swift语言版,优化级别。播放构建设置,但它不起作用。
我也试过我的pod文件。
swift_32 = ['Alamofire', 'AlamofireImage', 'AssistantKit'] # if these pods are in Swift 3.2
swift4 = ['SwiftyJSON'] # if these pods are in Swift 4
post_install do |installer|
installer.pods_project.targets.each do |target|
swift_version = nil
if swift_32.include?(target.name)
swift_version = '3.2'
end
if swift4.include?(target.name)
swift_version = '4.0'
end
if swift_version
target.build_configurations.each do |config|
config.build_settings['SWIFT_VERSION'] = swift_version
end
end
end
end
构建和运行项目可以正常工作,但只有归档过程失败并出现上述错误。
答案 0 :(得分:0)
我有类似的问题。我能够运行安装了pod的Xcode项目,即Alamofire, SwiftyJson
等,但每次我尝试通过显示上述错误来归档该过程失败。问题的原因是cocoapods
完全删除cocoapods并重新安装它解决了我的问题。
从MacOS中完全删除cocoapods:
1.在终端中输入gem list --local | grep cocoapods
。你会在终端看到类似的东西:
cocoapods(1.3.1)
cocoapods-core(1.3.1)
cocoapods-deintegrate(1.0.1)
cocoapods-downloader(1.1.3)
cocoapods-plugins(1.0.0)
cocoapods-search(1.0.0)
cocoapods-stats(1.0.0)
cocoapods-trunk (1.3.0)
cocoapods-try(1.1.0)
sudo gem uninstall cocoapods
sudo gem uninstall cocoapods-deintegrate
sudo gem uninstall cocoapods-downloader
rm -rf~ / .cocoapods /
pod deintegrate
rm Podfile
sudo gem install cocoapods
pod setup --verbose
将所需的pod添加到您的项目并尝试存档。
希望这会有所帮助。