2017-05-30 38 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

我同意,我将不得不更新测试用例与更新的应用程序的工作,但要注意应用程序的问题不工作时固定的! :)