Xcode 9存档过程失败

时间:2017-10-13 12:03:37

标签: xcode9 swift4

我正在开发一个最初在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


构建和运行项目可以正常工作,但只有归档过程失败并出现上述错误。

1 个答案:

答案 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)

  1. 现在您需要逐个删除每个宝石以下命令。
  2.   

    sudo gem uninstall cocoapods
    sudo gem uninstall cocoapods-deintegrate
      sudo gem uninstall cocoapods-downloader

    1. 同时删除〜/ .cocoapods以删除podspecs的缓存。这将删除旧的主回购。
    2.   

      rm -rf~ / .cocoapods /

      1. 从您的Xcode项目中删除pod删除Podfile。我还删除了我的.xcworkspace。
      2.   

        pod deintegrate
        rm Podfile

        1. 现在所有这些重新安装cocoapods后使用:
        2.   

          sudo gem install cocoapods
          pod setup --verbose

          将所需的pod添加到您的项目并尝试存档。
          希望这会有所帮助。