2017-05-30 52 views
0

我有一個完美工作的ObjC項目與帶有多個目標的Apple WatchKit應用程序集成。只有一個目標與WatchKit應用程序鏈接。使用Swift和ObjC代碼庫時未找到PojectName-Swift.h

我正在將我的類移動到swift,因此在我的代碼中使用了ModuleName-Swift.h文件。

遵循ModuleName-Swift.h file not found in xcode8中給出的步驟,我已經確保在項目>構建設置> Objective-C生成的接口標題名稱下添加「$(PROJECT_NAME)-Swift.h」。

enter image description here

但是當我去構建設置 - 它顯示爲Objective-C generated interface header name該項目的目標和Swift_ObjC_Interface_header_name爲WatchKitApp目標

錯誤由編譯器拋出:項目名 - 斯威夫特。 h文件未找到

這是否導致錯誤?不知道我錯過了什麼。

這是怎麼了,我掛在其他目標

enter image description here

enter image description here

enter image description here

回答

1

的-swift.h文件的問題是:

  • 有是失敗的單元測試案例克,擾亂了項目

快速修復的進一步編譯:

  • 的的ObjectiveC類有與它相關聯的單元測試用例。
  • 由於對主代碼庫的更改,部分單元測試失敗。
  • 我不得不在Edit Schemes > Build下取消選中以下內容,以便它們在運行WatchKit應用程序時不會生成。

enter image description here

我同意,我將不得不更新測試用例與更新的應用程序的工作,但要注意應用程序的問題不工作時固定的! :)