8

在我通过 CocoaPods 向我的测试项目添加新的依赖项之前,我已经添加了一个 C 头文件('wahoo.h')并通过一个桥接头文件“wahoo-Bridging-Header.h”将它暴露给 swift 代码。测试应用程序可以毫无问题地编译和运行。

然后我在我的项目中添加了一个新的依赖项“STHTTPRequest”。您可以在此处查看文件列表:

在此处输入图像描述

如果我添加了这一行:

#include <STHTTPRequest/STHTTPRequest.h>

它将无法编译并显示此错误消息:

在此处输入图像描述

我尝试了一些替代方案,但都失败了:

#include "STHTTPRequest.h"

#import "STHTTPRequest.h"

显然我在一个项目中不能有多个桥接头文件。如何解决此导入问题?

编辑Pods如果我将头文件从复制到SO1并添加#include "SO1/STHTTPRequest.h"到桥接头中,我可以解决这个问题。这不是一个理想的解决方案。

如何自动复制头文件?或者,如何使头文件Pods可以访问SO1

4

5 回答 5

7

您需要告诉 Xcode 在哪里查找您在桥接头中列出的头文件。找到Search Paths 部分,并更改Header Search Paths的项目级设置,为目录添加递归条目。Pods应该是Pods/**现在。

在桥接头中包括:

#include <STHTTPRequest/STHTTPRequest.h>

或者因为递归搜索路径:

#include <STHTTPRequest.h>
于 2015-02-12T00:13:37.800 回答
3

您应该添加以下标头搜索路径:“${PODS_ROOT}/Headers/STHTTPRequest”

于 2014-09-10T08:43:29.670 回答
2

我在“搜索路径/用户标题搜索路径”下的项目的构建设置中添加了“Pods/Headers/Public”作为递归条目。

然后我可以使用标准导入格式:-#import "AFNetworking/AFNetworking.h"

于 2014-12-18T13:29:24.893 回答
1

这有效:

#include <STHTTPRequest.h>
于 2014-09-10T09:15:58.617 回答
0

如果您在 Objective c 中的 pod 库在这种情况下,您需要像这样导入类 -

@import STHTTPRequest;

于 2017-07-11T12:23:08.377 回答