我正在努力创建一个包含多个子规范的cocoapod规范,其中每个子规范都应该是其自己的框架。
基本上我有以下规范:
Pod::Spec.new do |s|
s.name = 'BMCommons'
...
s.default_subspec = 'BMCore'
s.subspec 'BMCore' do |s_core|
s_core.header_dir = 'BMCore'
...
end
s.subspec 'BMUICore' do |s_uicore|
s_uicore.header_dir = 'BMUICore'
...
end
end
现在,我希望这导致一个BMCore.framework和BMUICore.framework而不是一个BMCommons.framework。这可能吗,或者我需要创建多个规范才能实现此目的?
最佳答案
简而言之:不,您不能拥有导致不同框架的子规范,因为-顾名思义-这是子规范,它是某些内容的一部分。从cocoapod docs:
但是,当您在项目中使用它时,它将在内部产生单独的框架,它们的文件名为 BMCommons-BMCore 和 BMCommons-BMUICore 。您导入的实际框架名称将保持为 BMCommons 。
您可以通过创建一个具有2个目标的项目来进行尝试,并在Podfile中为一个目标添加第一个子规范,为另一个目标添加第二个子规范。安装Pod之后,您应该在 Pods 项目中查看目标,其中有cocoapod生成的框架。
关于ios - Cocoapod规范,每个子规范具有单独的框架,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38179831/