【发布时间】:2017-07-22 12:40:06
【问题描述】:
我有一个项目是在 xcode 7 中使用 swift 2 开始的。我现在在 xcode 8 中使用 swift 2.3。当我尝试迁移到 pro 3 时,我遇到了几个错误,没有项目。来自图书馆和我的代码。首先我更新我的 pod,然后对项目进行自动转换。我的疑问是: 如果某些库会导致错误,我可以解锁并转换吗? 在开始对话之前我需要准备一些东西吗?在我读到的关于它的文章中,我没有说任何关于它的东西。 如果你继续使用 swift 2.3,你以后会有什么问题吗?
应用程序非常大,最好的选择是什么?
【问题讨论】:
-
我们最近进行了这样的转换。至少可以说是可怕的。我们采用了多种方法来完成它。自动转换、手动代码更改、错误修复和大量测试。
-
Mozilla 最近搞定了:mozilla-mobile.github.io/ios/firefox/swift/core/2017/02/22/… 一句话,可能又长又复杂。 Swift 4 应该允许“旧的 Swift 代码”,但我强烈建议至少使用 Swift 3,对于未来的版本也是如此。事先检查您的所有依赖项(例如,pod 是否具有 Swift 3 版本)。
-
拥有该项目的副本是个好主意。我已经使用此选项转换了一个相对较小的应用程序,我需要一个小时来修复所有错误(许多人可以选择自动修复它们)
-
XCode 8.3 Beta 3 release notes 的摘录:Xcode 8.3 不再支持 Swift 2.3。请将包含 Swift 2.3 代码的项目迁移到 Swift 3 语法,方法是打开项目并选择 Edit > Convert > To Current Swift Syntax。
-
@breno。我也在使用项目 2.3 进行了很多次尝试,但出现了太多错误。在我的项目中,我使用了 carthages & pods。还在纠结怎么更新。你更新了代码吗?