2017-03-29 44 views
1

當我試圖Xcode8.3(8E162)今天更新 - 更新迦太基後 - 發生錯誤:什麼的原因,「當前SwiftyJSON(通過SWIFT 3.0.2)不能與雨燕3.1導入」

電流SwiftyJSON(通過SWIFT 3.0.2)不能與夫特3.1 BALABALA

被導入和我發現SwiftyJSON未結帳成功終端。後來,我鑽了我幾個小時後,發現解決方案包含在官方
GitHub repository issue #771:
"Current SwiftyJSON (via Swift 3.0) cannot be imported with Swift 3.0.2."

而且還用命令

:carthage update --no-use-binaries SwiftyJSON --platform iOS 

您需要刪除並重新添加SwiftyJSON.framwork

這個問題雖然解決了,但我不知道原因,是否有好友知道爲什麼嗎?

+0

我改進了一些主要的(代碼)格式/拼寫/突出顯示和語法。 – zx485

+0

實際上,我想問的是:發生此錯誤的原因是什麼 – Lawrence

+0

我很抱歉我沒有充分重新解釋您的問題。但是如果你確實知道得更好 - 因爲你問了這個問題 - 爲什麼不相應地編輯它? – zx485

回答

0

請確保使用的類型CLI運行SWIFT 3.1「迅速--version」。如果您仍然看到「Apple Swift 3.0.2版」,這意味着您的Mac使用swift 3.0.2編譯器。嘗試將xcode 8.3替換爲xcode 8.2.1可能會有所幫助。

+0

是的,我認爲這可能workround這個錯誤,如果我重新啓動我的Mac時,Xcode更新 – Lawrence

0

謝謝,你的問題讓我花費了整整一天的時間 - 我無法弄清楚問題出在哪裏。

現在我知道問題是什麼,看起來像是因爲SwiftyJSON發佈了他們的框架的二進制版本,Carthage下載和使用它們的框架。這些尚未更新Swift 3.1(SwiftyJSON 3.1.4發佈於1月10日),沒有- 沒有使用二進制文件切換,迦太基將愉快地使用它,即使它是無效的。

+0

啊哈,這聽起來很合理,也許我需要了解迦太基的基本原則,爲了真正避免在未來這樣的問題 – Lawrence