这个问题发生在Swift Project和Swift框架中,而不是Objective-C项目和Swift框架中。
“为什么链接程序将静态库链接出错?iOS”答案无法帮助我。
我创建一个主项目并创建四个框架。
ModuleA和ModuleB是动态框架。
ModuleStaticA和ModuleStaticB是静态框架。
我尝试让他们彼此链接。
只有动态框架链接静态框架才能成功。
例如,当我尝试使用ModuleB链接ModuleA并在主项目中调用ModuleB时,主项目将崩溃并调用错误“找不到自动链接的框架”。
ModuleB代码:
import ModuleA
public class PersonB: NSObject {
var personA: PersonA!
public override init() {
super.init()
personA = PersonA.init()
print("PersonA in PersonB: \(Unmanaged.passUnretained(personA).toOpaque())")
}
public func sayHello(){
print("Module B Person Say Hello!")
print("PersonB: \(Unmanaged.passUnretained(self).toOpaque())")
}
}
ModuleA代码:
public class PersonA: NSObject {
public func sayHello(){
print("ModuleA Person Say Hello!")
print("PersonA: \(Unmanaged.passUnretained(self).toOpaque())")
}
}
MainProject代码:
import ModuleB
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
PersonB.init().sayHello()
}
}