具有依赖性的CocoaPods框架 - 包括框架模块内的非模块化头

the*_*tic 12 frameworks cocoapods swift

我正在尝试构建一个包含其他pod依赖项的私有CocoaPods框架.

其中,我在podspec文件中添加了Parse作为依赖项:

s.dependency 'Parse'
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试去皮时,

pod lib lint MyPrivateSpec.podspec  --verbose --sources 'git@bitbucket.org:MY_BITBUCKET_NAME/specs.git,https://github.com/CocoaPods/Specs'
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

目标支持文件/ Parse/Parse-umbrella.h:3:9:注意:目标支持文件/ Parse/Parse-umbrella.h中包含的文件:3:

错误| xcodebuild:Parse/Parse/Parse.h:12:9:错误:在框架模块'Parse.Parse'中包含非模块头

[以下几行中有更多这类错误......]

我几乎查看了所有关于SO和github问题的相关问题,但我找不到任何对我有用的东西.有没有人遇到过这些问题,或者熟悉为什么这不起作用?

Aar*_*ght 2

不幸的是,这是 Parse 库本身的问题。不久前,当我尝试在为 iOS 构建的框架中使用 Parse 库时,我遇到了类似的情况。

该错误意味着 Parse 的公共 .h 文件之一中包含一个不属于模块的标头。在 Parse 的例子中是这样的<sqlite3.h>如果我没记错的如果不从 Parse 的公共标头中删除它,就不可能构建也包含 Parse 的框架目标。这应该作为 Parse 的错误提交,以便他们可以进行升级以支持模块化框架构建。

由于我的项目需要构建框架目标,因此我不得不在项目中继续使用 Parse。

这是对具有类似答案的类似问题的参考:/sf/answers/1731005251/