如何在另一个pod .podspec文件中添加私有CocoaPod作为依赖项?

kid*_*d49 24 iphone objective-c ios cocoapods

我正在开发一个私有pod,它依赖于其他私有pod.所以我只想在我的pod .podspec文件中提及它.

它在pod2的.podspec文件中看起来像这样.

s.dependency 'Pod1', '~> 0.0.1' , :git => 'https://github.com/MY_COMPANY/pod1.git', :commit => '9f9f4fe5b5959e0f2ea89e472eccf7aea6f37eea'
Run Code Online (Sandbox Code Playgroud)

我开始知道"podspec依赖说明符中没有:git和:commit选项"所以如果没有那么如何实现那个东西呢?

Tom*_*wer 14

您必须维护私有podspecs的存储库.

将该存储库添加到CocoaPods安装:

pod repo add MyPrivateSpecs git@git.example.com:MyPrivateSpecs
Run Code Online (Sandbox Code Playgroud)

将私有依赖项pod添加到其中:

pod repo push MyPrivateSpecs Pod1
Run Code Online (Sandbox Code Playgroud)

现在您可以像往常一样简单地引用该pod:

s.dependency 'Pod1', '~> 0.0.1'
Run Code Online (Sandbox Code Playgroud)

  • @Tom,您是否看到错误:“无法找到[ClientPrivateSpec]所依赖的规范[PrivateSpecName]”?我已经运行pod`remote add MySpecs path / to / my / specs.git`并验证cocoapods能够看到它(它出现在`〜/ .cocoapods / repos / MySpecs`下)。根据我的理解,我已经验证它可以看到它,但是它仍然在podspec文件中(带有或不带有版本)抱怨。 (2认同)
  • 我相信第二个命令现在应该是:`pod repo push MyPrivateSpecs Pod1`.我猜测语法在某些时候发生了变化,因为链接文章也使用了"pod push". (2认同)