Module compiled with Swift 4.0.3 cannot be imported in Swift 4.1

Swift 不斷改版,變得更強大更方便,然而它也讓我們開發 iOS App 時,需要特別注意版本問題。比方 Xcode 9.3 搭配的 Swift 版本是 4.1,如果 App 裡用到舊版 Swift 製作的 framework,將產生可怕的紅色錯誤。

Module compiled with Swift 4.0.3 cannot be imported in Swift 4.1

此時的解法有兩種,一種是換成以新版 Swift 製作的 framework,不過如果 framework 是別人製作的,往往需要等一段時間,等到花兒也謝了還等不到新版。

沒關係,還有第二種解法,我們可以靠自己,不用靠別人。我們可以連到 Swift 的官網下載舊版的 Swift,採用舊版的 Swift 製作 App。

1 連到 Swift 官網。

2 點選左邊的 DOWNLOAD 按鈕。

3 找到 Swift 4.0.3,點選 Xcode 9.2 下的 Toolchain 下載 Swift 4.0.3 的安裝檔。

4 雙擊 swift-4.0.3-RELEASE-osx.pkg 進行安裝。

現在我們的 Xcode 將可切換不同版本的 Swift,切換的方法有兩種

方法一

從 Xcode > Toolchains 選擇 Swift 4.0.3 Release。

方法二

點選 Xcode > Preferences 打開 Xcode 的設定視窗。

切換到 Components 下的 Toolchains 頁面後,點選 Swift 4.0.3 Release 切換 Swift 版本。

此時重新 build App,紅色錯誤將消失無蹤 !看到令人開心的 Build Succeeded。

--

--

彼得潘的 iOS App Neverland
彼得潘的 Swift iOS App 開發問題解答集

彼得潘的iOS App程式設計入門,文組生的iOS App程式設計入門講師,彼得潘的 Swift 程式設計入門,App程式設計入門作者,http://apppeterpan.strikingly.com