警告:模块中的Swift错误。调试器中将无法使用此模块的调试信息

时间:2017-05-31 16:52:20

标签: objective-c xcode swift3 lldb

我的swift + obj-c应用程序在我的控制台中没有调试值,我得到了一条非常无用的消息,解释了为什么调试器不工作:"警告:模块XXX中的Swift错误&#34 ;. XXX是我的模块的名称,而不是我包含的第三方。

我的应用程序在快速发布之前就已存在。我使用桥接头开始使用swift,我最近使用xcode工具将所有swift 2文件迁移到swift 3.(但我仍然有obj-c遗留在那里)。我使用可可豆荚,这可能导致了这个问题。

no debugger information...

(lldb) po self warning: Swift error in module XXX. Debug info from this module will be unavailable in the debugger.

我尝试了对此post和其他几个人的第二个答案 我发现建议同样的事情:删除重复的导入。

我尝试从swift项目中删除重复导入。事实上,如果我运行find . -name "*swift" | xargs grep "import"并且我没有得到任何结果。所以我最终删除了所有swift文件中的所有导入(并注释掉代码以使其编译),看看我是否可以让我的调试器回来。

因此...

  • 这个问题还有另一个解决方案吗?
  • 有没有办法获得更详细的错误消息?
  • 在我的桥接标题中有重复的标题是否有问题?例如,我的很多obj-c文件都导入了UIKit,我在桥接头中包含了一些这样的文件。

1 个答案:

答案 0 :(得分:2)

刚才我遇到了这个问题。 这是我的解决方案:

如果您通过Cocoapods导入第3个回购,并且回购是由Objective-C编写的,则需要通过以下方式导入:

// System 
#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>

// Directly add - Objective-C
#import "EaseUI.h"

// Cocoapods - Objcetive-C
@import MJRefresh;

您可以在Github中参考此issuequestion