如何在 Xcode 9.3 中切换到 Swift 4.0?

Posted

技术标签:

【中文标题】如何在 Xcode 9.3 中切换到 Swift 4.0?【英文标题】:How can I switch to Swift 4.0 in Xcode 9.3? 【发布时间】:2018-04-05 08:05:17 【问题描述】:

似乎我只能选择转到 3.3,或者未指定:

我可以切换到 4.0 吗?

【问题讨论】:

我认为,你必须安装以前的 Xcode 版本。 为什么?将代码从 4.0 迁移到 4.1 非常简单,迁移者甚至可以做到。 @vadian,请告诉 Cuckoo 和 Mixpanel 开发人员;) 好吧,那么您必须等待 Xcode 更新,直到您的所有依赖项也更新。您还可以在应用程序文件夹中同时拥有两个 Xcode 版本。 你解决了吗? 【参考方案1】:

确保您已更新 xCode,然后在 Build Settings 下,检查 Swift Compiler - Language 的下拉选项。

此外, 如果您有高级开发者帐户 (apple id),您可以从 Apple Download Portal 下载 Xcode 8.x 和 9.x。您可以在单个 (mac) 系统中安装和使用 Xcode 9 和 Xcode 8.x。 (确保你有支持这两个版本的 Xcode 的命令行工具,以使用终端)

【讨论】:

您可以在附加的屏幕截图中看到此操作的结果【参考方案2】:

我能够在 XCode 10 中安装 swift 4.0,并使用此处的解决方案 "Switching Swift Versions inside Xcode using Toolchains"。

但最终这没有帮助。我坚持错误:

:0:错误:未知参数:'-enable-batch-mode'

即使disabling 也无济于事。我得到了:

:0:错误:未知参数:'-disable-batch-mode'


"Switching Swift Versions inside Xcode using Toolchains" 很快:

    下载需要的toolchain,点击安装。 在 XCode 首选项中选择新的工具链。
      在这里选择: 这里的结果:
    使用所需的 swift,注意警告。

另一个相关:material。

【讨论】:

以上是关于如何在 Xcode 9.3 中切换到 Swift 4.0?的主要内容,如果未能解决你的问题,请参考以下文章

Swift 自动布局在 Xcode 9.3 中不起作用

Xcode 9.3 编译 Swift 源项目永远不会完成

Xcode 9.3(Swift 4.1)中的 Codable '没有初始化器'

Xcode 9.3 新增能力,优化 Swift 编译生成代码的尺寸

堆栈视图中的自动约束冲突、Swift 2、iOS 9.3、XCode 7

没有这样的模块 'GoogleSignIn' Xcode 9.3 和 Swift 4.1