【问题标题】:Downgrade xcode project from swift 3 to swift 2.2将 xcode 项目从 swift 3 降级到 swift 2.2
【发布时间】:2016-10-19 13:46:53
【问题描述】:

我下载了新的 xCode 8 测试版。当我打开我的旧项目(在 swift 2.2 中)时,我点击了转换为新的 swift 语法,然后我点击了 swift 3。问题是我使用的是通过 carthage (Kanna) 下载的框架。我尝试使用:

迦太基更新

但它不起作用。

当我尝试在新的 Xcode-beta 上运行代码时,我收到此错误:

模块文件是由旧版本的编译器创建的;重建'Kanna'并重试:

【问题讨论】:

  • 无法自动降级。这是考虑使用源代码管理或进行备份的好时机。
  • @vadian 有没有办法升级/更新 carthage 文件/Kanna 框架以在新的 Xcode beta 上工作?
  • 我不知道那个框架,但通常开发人员很快就会提供更新。

标签: swift carthage swift3 xcode8


【解决方案1】:

首先保存当前项目的备份。现在!

解决方案 1

使用 Xcode 7.3.1 打开您的项目,它使用 Swift 2.2,因此它会向您发出一堆错误信号。既然您了解 Swift 2.2,您应该能够修复错误并使您的项目再次与 Swift 2.2 兼容

解决方案 2

在 Xcode 8 beta 中,您可以选择 Swift 版本(Swift 2.3 或 Swift 3.0)。选择 Swift 2.3(它与 Swift 2.3 完全兼容,但确实支持新的 iOS API)。然后,再次手动修复错误。

解决方案 3

打开您正在使用的库并使用 Xcode 8 将其升级到 Swift 3.0。这是一个临时解决方案,直到该库的开发人员提供升级后的代码

【讨论】:

  • 如何升级库?
  • 如何选择 Swift 2.3? XCode 中有版本吗?
【解决方案2】:

当您第一次使用 Xcode 8.0 打开项目时,迁移助手会提示您执行迁移过程。也可以从菜单中手动调用助手

Edit -> Convert -> To Current Swift Syntax…

如果您升级了代码,例如2.3 到 3.0,现在想降级到 2.3,你可以在上面使用。如果发生任何错误,请从您的存储库中复制您上次提交的代码,它应该可以正常工作。

【讨论】:

    【解决方案3】:

    似乎我回答得太晚了,但支持 swift 3.0 的“Kanna”框架有可用更新。如果您使用 CocoaPods

    ,则可以将其添加到您的 podfile
    use_frameworks!
    pod 'Kanna', '~> 2.0.0'
    

    或者对于 Carthage,您可以像这样安装

    github "tid-kijyun/Kanna" ~> 2.0.0
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-11-16
      • 2016-07-11
      • 1970-01-01
      • 2017-03-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多