Ale*_*ach 5 xcode cocoapods swift swift3
我有一个项目,其中包含大量代码,我认为是swift 2.3它包含和app扩展也用swift 2.3编写并使用2个Cocoapods:SwiftyJSON和MMWormhole.下载Xcode 8.3 beta后,迁移器运行了,我在一个主swift文件中包含了近100个编译器错误SwiftyJSON.
基本上我想知道是否有一种方法可以在Xcode8中使用这些细节.我很乐意将我自己的代码更新为swift3但是我不控制cocoapods(MMWormHole在Objective-C中,所以我假设Xcode将它转换为它需要的Swift版本,因为它不会发出编译器错误).我可以告诉Xcode全局使用swift 2.3吗?
您必须设置Use Legacy Swift Language Version为YES使用SWIFT 2.3代码Xcode 8.然后将其添加到您的Podfile所有pod目标中确认相同.
post_install do |installer|
installer.pods_project.targets.each do |target|
target.build_configurations.each do |configuration|
configuration.build_settings['SWIFT_VERSION'] = "2.3"
end
end
end
Run Code Online (Sandbox Code Playgroud)
我希望,这会有所帮助.
根据我启动工作区时的经验,SDK 应该询问您是否要将代码转换为 Swift 3 还是“稍后”执行。如果只是稍后选择,它不会将您的代码迁移到 swift 3。我必须警告您,我也经历过同样的事情,并且几乎不可能仅仅因为您想使用最新最好的 Xcode 8 就向后工作。您最终会遇到问题,例如当您准备推送到应用程序商店时,iTunesConnect 不会接受任何低于版本 10 的文件。此外,当其他开发人员继承您的代码时,他们也会遇到问题使用的是早期版本的 Xcode。
| 归档时间: |
|
| 查看次数: |
6015 次 |
| 最近记录: |