【问题标题】:Migrating iOS Project from Swift 2.3 to 3.0 in XCode 8在 XCode 8 中将 iOS 项目从 Swift 2.3 迁移到 3.0
【发布时间】:2017-01-07 15:49:02
【问题描述】:

我已经在我的项目中安装了 Realm Framework(在 XCode 7.3.1 中)。但是现在在将 xcode 更新到 8 之后,我将我的项目代码转换为 swift 3.0。并收到此错误

模块文件由版本的编译器创建;重建“Realm Swift”,再试一次

我重建,但无法解决此错误。 因此,要解决此问题,请从 realm.io 下载最新的 Realm 框架并将旧的替换为新的(swift 3.0)。

现在我收到此错误。

模块文件是由较新版本的编译器创建的。

请建议我如何解决此不兼容问题。

【问题讨论】:

标签: ios swift realm


【解决方案1】:

Xcode 本身提供了从 swift 2.3 迁移到 swift 3.0 的选项。将您的 Xcode 更新到最新的 8.0 即可。

编辑 > 转换 > 到当前的 Swift 语法

你可以选择转换你想要的版本!

希望这个答案对你有所帮助!

【讨论】:

    【解决方案2】:

    要解决 Realm 的问题,您必须更改 Podfile 并下载最新的 Realm 版本。将 pod 'RealmSwift' 更改为 pod 'RealmSwift',git:'https://github.com/realm/realm-cocoa.git',分支:'master',子模块:true。并且不要忘记在你的 podfile 末尾添加

    post_install do |installer|
    
    installer.pods_project.targets.each do |target|
    
    target.build_configurations.each do |config|
    
    config.build_settings['SWIFT_VERSION'] = '3.0'
    
       end
    
      end
    
    end
    

    【讨论】:

      【解决方案3】:

      由于 Xcode 中还没有 3.1,所以如果您使用 Xcode 8 和为 Swift 3 构建的 Realm Swift,则不应该有任何方式导致 Module file was created by a newer version of Compiler. 错误。

      确保您运行的是 Xcode 8 和 Realm Swift 3 二进制文件。可能有必要在您的应用程序中完全删除对以前 Realm Swift 框架的所有引用,并从头开始重新嵌入它。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-12-23
        • 1970-01-01
        • 1970-01-01
        • 2017-08-20
        相关资源
        最近更新 更多