objective-c - 通过cocoapods导入的第三方库import时找不到文件

浏览:64日期:2023-11-27

问题描述

比如

#import 'Masonry.h'

上面这样是可以的,没有问题

#import <Masonry/Masonry.h>

这样就不行了,提示找不到文件

问题解答

回答1:

#import <Masonry/Masonry.h>这种形式会在你的build setting的header路径设置里面查找路径,你没配置header查找路径当然会找不到文件。

为什么#import 'Masonry.h'可以找到呢?原因是Xcode会默认包含所有header文件,所以#import 'Masonry.h'是可以的。

哪种情况下使用#import <Masonry/Masonry.h>这种形式?如果你的工程有多target的话,就配置header搜索路径,使用#import <Masonry/Masonry.h>这种形式吧,不然header头文件冲突很烦人的。

补充(下面几张图片理解起来就容易了)build settings配置objective-c - 通过cocoapods导入的第三方库import时找不到文件

目录结构objective-c - 通过cocoapods导入的第三方库import时找不到文件

头文件导入

objective-c - 通过cocoapods导入的第三方库import时找不到文件

回答2:

Masonry有静态库吗 你这样引用

回答3:

Xcode有一个bug:即使写代码时报错找不到头文件,但是可以build。另外,如果你使用了framework,你可以使用 @import Masonry;

相关文章: