我有与下列项目的项目工作的iOS问题decencies设置:嵌套框架
Main App
--> UIFramework (own framework)
--> CoreFramework (own framework)
--> Mixpanel Third Party framework installed using carthage
每个框架设置,因为它上面的一个项目依赖,换句话说: - CoreFramework包含Mixpanel框架 - UIFramework对CoreFramework的依赖关系 - 主应用程序依赖于UIFramework
此结构在一个公共工作区上设置。
我可以单独构建和测试每个框架,而不会出现任何问题。 我的问题归结为从主应用程序访问CoreFramework。
如果我抢我的根视图控制器,写了下面的代码:
import UIKit
import UIFramework
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
let object = UIFrameworkClass()
object.testFunction()
}
}
的应用程序运行,并建立对设备没有任何问题。 不过,如果我写这样的代码:
import UIKit
import UIFramework
import CoreFramework
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
let object = UIFrameworkClass()
object.testFunction()
coreFrameworkGlobalTestFunction()
}
}
建设时,我收到以下错误:
Framework not found Mixpanel for architecture arm64
我试过嵌入和Mixpanel框架直接链接到我的应用程序都无济于事。
这是什么原因引发的任何想法?如何从我的主应用程序访问CoreFramework上的类和函数而不会出现错误?
非常感谢。
您是否尝试过将所有这些框架添加到目标的建筑阶段链接部分?也尝试清理并重新启动你的Xcode,它有时会起作用。 – user3349433
是的,重启Xcode并清理派生数据文件夹会得到相同的结果。 :/ –