Xcode找不到ProductModuleName-Swift.h

Kyl*_*cot 5 xcode objective-c swift

我正在尝试将我的"-Swift.h"文件导入到我的一个Objective-C .h文件中,但xcode一直告诉我该文件不存在

#import "Aesculus-Swift.h"
Run Code Online (Sandbox Code Playgroud)

如果我命令单击文件名,它将带我到生成的头文件,所以我知道它存在.为什么xcode无法找到它?

在此输入图像描述

在此输入图像描述

Jes*_*edc 5

这似乎只是Xcode的另一个问题,它是静态分析器和编译器的复杂工具链.

Openradar列出雷达:// 21362856 - Swift到Objective-C桥接是不可靠的.我相信还有更多,但我停止了为这个例子找到一个.

作者imarcelv在描述中注意到:

我在实验室的WWDC上问了一位Swift工程师,甚至他也不知道如何解决这个问题.

重现步骤:

  1. 将一个ramdom Swift类添加到Objective-C项目中
  2. 添加Xcode自动生成的#import"ModuleName-Swift.h"文件
  3. 尝试使用它或只是尝试编译项目
  4. 它有时不起作用

最好在这个问题上提出一个雷达,因为似乎其他人已经在调出它了.

另外一件事你可以试试......

从历史上看,Xcode可能完全失去它的语法高亮,你总是可以通过增加clang的日志级别找出静态分析器放弃的文件.

我不确定它是否仍然相关,但如果我在你的位置,我会尝试这个命令:

defaults write com.apple.dt.Xcode IDEIndexingClangInvocationLogLevel 3
Run Code Online (Sandbox Code Playgroud)

这会生成您可以使用Console.app搜索的日志,xcode以便突出显示消息.您将要删除项目的派生数据以强制它重新编译.

尽管与您所看到的问题不同,但我已经在语法突出显示问题上发表这篇文章多年来为上述defaults write命令添加书签,以便在这些时间内尝试.