我曾经使用过迦太基,并试图了解如何在Cocoapods中做同样的事情。基本上我有一个依赖于另一个框架的Core框架。在开发Core时,我可以用
来引入我的依赖git "file:///pathtodependencyframework" "development-branch"
在Cocoapods中,我想先了解如何在本地引用此框架。我尝试在项目链接部分
下添加它s.framework = "DependencyFramework", :path => '~/pathtodependencyframework'
但我明白了,failed to load podspec. File: syntax error, unexpected =>, expecting key word_end
我也看到Project Settings s.dependency
。在Cocoapods中引用与Carthage一起工作的依赖框架的正确方法是什么?依赖框架是否需要podspec本身?目前它没有一个,因为迦太基不需要它。
其次,一旦我准备发布并将其放在Github上,建议的解决方案将如何改变?
答案 0 :(得分:0)
您无法将本地pod作为依赖项添加到本地pod。看看this issue。
您可以将DependencyFramework添加为子规范并将其作为依赖项添加到Core subspec:
s.subspec 'DependencyFramework' do |df|
df.source_files = "DependencyFramework/**/*.swift"
end
s.subspec 'Core' do |core|
core.source_files = "Core/**/*.swift"
core.dependency 'Core/DependencyFramework'
end
所以你只需要1个podpec。
当您将此库放在Github上时,您需要发布pod(请参阅documentation的发布部分)。发布pod后,您只需添加它而不提及本地路径:pod 'MyLib/Core'
请注意,如果您的框架具有cocoapods依赖项并且您希望将其与carthage一起使用,则可能存在some problems依赖项。