我有一个带有用户界面项目 (UI) 和核心逻辑项目 (Core) 的 XCode 工作区。我想在 UI 项目中进行 OCUnit 单元测试,所以我添加了一个新的测试目标,就像通常所做的那样。
我能够很好地运行测试,直到我为主 UI 目标中的类输入导入语句,这反过来又引用了 Core 项目。
我得到的错误是“找不到词汇或预处理器问题'xxx.h'文件”。当我直接构建主 UI 目标时,我没有收到此消息。
就好像主 UI 目标在构建时知道 Core,但是当它从测试目标中引用时,它似乎对 Core 一无所知。
我采取了使用“Link Binaries with Libraries”添加对核心项目的引用的步骤列表中的项目保持红色。线索?也许吧,但链接列表中的红色引用并没有阻止 UI 目标构建和使用核心类。我还使主要目标成为测试目标的依赖项。