Swift:输入'未找到符号'

时间:2017-05-15 15:37:09

标签: swift linker

在Swift测试包中,我使用以下行来获取类的类对象,该类在动态加载的包(MyPlugin)中定义。该包包含Swift和Objective-C代码,并且在执行以下命令之前成功加载:

let aClass = NSClassFromString("MyPlugin.BackendAPIManager") as! BackendAPIManager.Type

当测试尝试执行该行时,我收到以下运行时错误:

dyld: lazy symbol binding failed: Symbol not found: __TMaC16MyPlugin17BackendAPIManager

将线路更改为

let aClass = NSClassFromString("MyPlugin.BackendAPIManager") as! NSObject.Type

我可以用

let apiURL = aClass.perform(#selector(BackendAPIManager.apiUrl(path:)), with: "/something")

这意味着通过bundle正确加载了类,但不知怎的,我无法通过其名称访问该类。找不到相应的符号,我不知道是什么原因引起的。有什么想法吗?

0 个答案:

没有答案