【问题标题】:How to add a private CocoaPod as a dependency in another pod .podspec file?如何在另一个 pod .podspec 文件中添加私有 CocoaPod 作为依赖项?
【发布时间】:2015-05-26 00:33:39
【问题描述】:

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

它在 pod2 的 .podspec 文件中是这样的。

s.dependency 'Pod1', '~> 0.0.1' , :git => 'https://github.com/MY_COMPANY/pod1.git', :commit => '9f9f4fe5b5959e0f2ea89e472eccf7aea6f37eea'

我开始知道“在 podspec 依赖说明符中没有 :git 和 :commit 选项”所以如果没有,那么如何实现呢?

【问题讨论】:

  • 我认为答案涉及维护私有 podspecs 的本地存储库。我们已经在我的团队中完成了这项工作,所以如果您在此期间无法弄清楚,我会尽快与您联系。
  • 检查这个答案。真的很有帮助...stackoverflow.com/a/27305019/3425873

标签: ios objective-c iphone cocoapods


【解决方案1】:

You have to maintain a repository for your private podspecs.

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

pod repo add MyPrivateSpecs git@git.example.com:MyPrivateSpecs

将你的私有依赖 pod 添加到它:

pod repo push MyPrivateSpecs Pod1

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

s.dependency 'Pod1', '~> 0.0.1'

【讨论】:

  • 我在 pod spec repo 中有那个东西,并在那里添加了 pod1.podspec 文件。我可以通过在 podfile 中提及将私有 pod1 添加到任何项目中。但是,作为依赖项提供时不起作用?
  • 这很奇怪。这就是我们在我的团队中所做的,而且它确实有效。我需要查看 podspecs 的更多详细信息以进一步帮助您。两个都可以发吗?另外,您说它“不起作用”。你能否提供更多关于它究竟是如何失败的细节?
  • [!] /usr/bin/git clone github.com/MY_COMAPNY/ios-authentication-pod.git /Users/siddarthchaturvedi/Library/Caches/CocoaPods/GitHub/f9abd6ed9ee100de28fe59d35fd5a2e79eaf990e --mirror 克隆到裸存储库 '/Users/siddarthchaturvedi/Library/ Caches/CocoaPods/GitHub/f9abd6ed9ee100de28fe59d35fd5a2e79eaf990e'... 远程:找不到存储库。致命:未找到存储库“github.com/Codigami/ios-authentication-pod.git
  • @Tom,你看到错误了吗:Unable to find a specification [PrivateSpecName] depended upon by [ClientPrivateSpec]?我已经运行 pod remote add MySpecs path/to/my/specs.git 并验证 cocoapods 看到了它(它出现在 ~/.cocoapods/repos/MySpecs 下)。据我了解,我已经验证它可以看到它,但它仍然在 podspec 文件中抱怨,无论有没有版本。
  • 我相信第二个命令现在应该是:pod repo push MyPrivateSpecs Pod1。我猜语法在某些时候发生了变化,因为链接的文章也使用了pod push
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-01-07
  • 2018-09-22
  • 2018-05-24
  • 2014-12-13
  • 1970-01-01
  • 1970-01-01
  • 2018-08-04
相关资源
最近更新 更多