可可豆荚移植问题到Swift 3

时间:2016-11-04 14:19:48

标签: xcode swift2 swift3 xcode8

有没有方便的方法从2.3版本迁移到Swift 3?

当我要求我迁移时,我打开了Xcode 8并按下了按钮。

现在我遇到了这个问题:

“Use Legacy Swift Language Version” (SWIFT_VERSION) is required to be configured correctly for targets which use Swift. Use the [Edit > Convert > To Current Swift Syntax…] menu to choose a Swift version or use the Build Settings editor to configure the build setting directly.

那么我的下一步是什么呢,我应该保留它的遗产还是我应该选择Xcode菜单编辑>转换为Swift 3。

我有一些pods库看起来像更新到Swift 3,但也许其中一些它仍然在2.3

迁移的更好方法是什么。

  1. 如何避免pods库问题?
  2. 什么是使用Legacy Swift语言版本,它是否适用于两个不同的Swift版本?

3 个答案:

答案 0 :(得分:0)

将鼠标悬停在Xcode顶部的编辑上 点击转换 点击"到当前的快速语法" 点击下一步2x 让它工作点击保存 现在点击命令B它将构建,所有这些错误将消失。 它可能仍然有一些,但必须告诉你如何解决它。

答案 1 :(得分:0)

最好是在提示时将语法转换为2.3(相同),而不是选择swift 3,除非您需要也不想这样做。

如何避免pods库问题? 如果您选择swift 3,在您单击下一步后,您将可以选择要转换的framewrok / pod /项目,只需取消选择框架/ pod,更不用说转换项目了。

什么是使用Legacy Swift语言版本,它是否适用于两个不同的Swift版本? pod为2.3,主项目为3,可以使用

答案 2 :(得分:0)

您可以通过将以下内容添加到Podfile

来取消此警告
  post_install do |installer|
      installer.pods_project.targets.each do |target|
          target.build_configurations.each do |config|
              config.build_settings['SWIFT_VERSION'] = '2.3'
          end
      end
  end