似乎以前有人问过这个问题,但是我还没有找到适合我的答案。
设置:我目前正在创建两个用于项目的静态库。假设我有 Project、Liba 和 Libb。项目链接到Liba 和Libb,Libb 有一个Liba 的导入标签。项目不直接使用 Liba,但我在工作区中有它,因为我已经读过我们不应该让一个库直接链接另一个库。令人惊讶的是,这一切都有效。我遇到的问题是我希望 Libb 也使用 StackMob。由于某种原因,Libb 在导入时找不到 StackMob.h。我以与其他库类似的方式将 Stackmob 库添加到我的工作区。
以下是每个类的相关代码片段。
项目.h
#import "Libb/Libb.h"
@interface project
{
Libb* _libb;
}
@end
项目.m
@implementation Project
{
_libb = [[Libb alloc] init];
}
@end
Libb.h
@class Liba
@class StackMob
@interface Libb
{
Liba* _liba;
}
@end
Lib.m
#import "Liba/Liba.h"
#import "Stackmob.h" //This is where I get the error. I have also tried "StackMob/StackMob.h"
@implementation Libb
{
//Code here....
}
谢谢您的帮助。如果您需要我澄清,请询问。我意识到我提供的一些代码不是必需的,但我认为它可能有助于理解我是如何进行设置的。