如何在Xcode 9上构buildSwift 3项目?

Xcode 9发行说明表示支持Swift 3编译:

Swift 4和Swift 3 ,Swift 4和Swift 3目标的一个编译器可以在同一个项目中一起编译。

我已经安装了Xcode 9testing版。 但是当我按下构build它显示一堆错误。 在Xcode 9中使用Swift 3时需要做些特别的准备工作吗?

UPD: 使用Swift 3.1编译的模块不能在Swift 4.0中导入

使用Swift 3.1编译的模块不能在Swift 4.0中导入

select目标,转到Build Settings > Swift Language Version

在这里输入图像说明

Xcode 9&Xcode 8.3。#两个版本都支持Swift 3.2。 如果您现有的项目具有默认语言Swift 3.2,那么它将在Xcode 9中工作,只需稍作更改。 但是,如果你的项目支持Swift版本3.1或更低,那么你必须将其迁移到3.2或4.0,以使用Xcode 9

项目►(select您的项目目标)►构build设置►(在search栏中键入'swift')Swift编译器语言►Swift语言版本►单击语言列表将其打开。

在这里输入图像说明

将源代码从Swift 3.2转换到4.0。 为了更容易地移植你的代码,请遵循以下步骤:(这将帮助你转换到Xcode Tool支持的最新版本的swift)

(Xcode)菜单:编辑►隐藏►到当前Swift语法

在这里输入图像说明

我希望这能帮到您

以上所有答案都回答了错误的问题。 当使用Xcode 9时,你正在使用Swift 4编译器(即使你正在使用它来编译Swift 3代码)来解决这个问题,使用适当的编译器/ Xcode重新编译。

如果你想通过命令行来做到这一点,你可以使用sudo xcode-select -switch在xcode版本之间切换。 祝你好运!

我有同样的问题 – (我安装了一个swift版本是3x的pod,而我的项目的swift版本是Swift 4.所以我得到了这么多的编译错误,后来我把Swift版本从4更改为3.2,并试图构build项目,编译器错误,我认为这是因为我在运行Swift 4时运行pod install。)

  • 首先,您需要从构build设置中更改“Swift语言版本”。
  • 如果你已经安装了任何pod,那么只更改“Swift语言版本”将无济于事。 您可能需要为该项目运行pod安装。

Xcode 9需要使用Swift 3.2或更高版本来构build框架。 转到https://github.com/emaloney/CleanroomLogger并点击下载ZIP。 在Xcode 9中打开xcodeproj。按⌘B。 CleanroomLogger.framework从红色变成黑色。 将该框架拖到您的项目中。 看到相关的问题: Swift 3.1的领域问题

建立它