将导入添加到 module_map 或伞头
Add import to module_map or umbrella header
不知道有没有办法改变PodName-umbrella.h
的内容?
或者以某种方式通过 podspec DSL 传递我自己的。
我需要将导入添加到伞头或理想情况下将所有内容更改为:
// PodName-umbrella.h
@import MyAnotherPod;
此外,我可以使用自定义 module_map
。
但是我不知道如何从我的 pod 中使用正确的头文件路径。
framework module PodName {
header "MyAnotherPod.h" // ⛔️ Header 'MyAnotherPod.h' not found
}
顺便说一句,我找到了解决办法!
我创建了自定义 雨伞 header — MyPod/Sources/MyPod-umbrella.h
.
并添加了 pods 的导入,我希望它可以通过 import MyPod
:
@import MyAnotherPod;
然后我创建了自定义 modulemap — MyPod/MyPod.modulemap
:
framework module MyPod {
umbrella header "MyPod-umbrella.h"
export *
}
最后在 ./MyPod.podspec
:
# Add MyPod-umbrella.h to sources
s.source_files = "#{s.name}/Sources/**/*.{swift,h}"
# Select custom module map
s.module_map = "#{s.name}/#{s.name}.modulemap"
经过这些更改后我可以写:
import MyPod
// And it also imports MyAnotherPod like
// import MyAnotherPod
不知道有没有办法改变PodName-umbrella.h
的内容?
或者以某种方式通过 podspec DSL 传递我自己的。
我需要将导入添加到伞头或理想情况下将所有内容更改为:
// PodName-umbrella.h
@import MyAnotherPod;
此外,我可以使用自定义 module_map
。
但是我不知道如何从我的 pod 中使用正确的头文件路径。
framework module PodName {
header "MyAnotherPod.h" // ⛔️ Header 'MyAnotherPod.h' not found
}
顺便说一句,我找到了解决办法!
我创建了自定义 雨伞 header — MyPod/Sources/MyPod-umbrella.h
.
并添加了 pods 的导入,我希望它可以通过 import MyPod
:
@import MyAnotherPod;
然后我创建了自定义 modulemap — MyPod/MyPod.modulemap
:
framework module MyPod {
umbrella header "MyPod-umbrella.h"
export *
}
最后在 ./MyPod.podspec
:
# Add MyPod-umbrella.h to sources
s.source_files = "#{s.name}/Sources/**/*.{swift,h}"
# Select custom module map
s.module_map = "#{s.name}/#{s.name}.modulemap"
经过这些更改后我可以写:
import MyPod
// And it also imports MyAnotherPod like
// import MyAnotherPod