【问题标题】:Is it possible to add a local dependency to .podspec file?是否可以将本地依赖项添加到 .podspec 文件?
【发布时间】:2018-02-13 14:54:38
【问题描述】:

我现在正在使用 cocoapods 我想在我的项目中添加一个本地 pod 依赖项,例如:

s.dependency = 'my pod', :path => ''

但我认为不可能,有什么想法吗?

【问题讨论】:

标签: cocoapods dependency-management


【解决方案1】:

我也遇到过同样的问题,在 CocoaPods github 上进行了大量搜索和询问后,我终于找到了合适的答案。

无法将本地 pod 设置为依赖项,但可以为特定的 Podfile 设置 pod 的源,其工作方式相同。

例如,在您的 podspec 中,您仍然有 ()

s.dependency = 'my pod', '~> 1.0' # or whatever version you have

然后在您的 Example/demo/test 项目的 Podfile 中:

pod 'my pod', :path => '/path/to/the/local/my_pod'

然后只需运行 pod install,您就会看到两个 pod 都是 Development pod。

当您同时开发 2 个 pod(其中一个依赖于另一个)时,这种方式非常有用,但是为了发布,您仍然必须将您的 pod 发布到存储库(CocoaPods 或私有存储库)。

【讨论】:

  • 执行此操作时验证您的 podspec 失败。 (Unable to find a specification for 'yoga' depended upon by 'MyLib'
  • @Tieme 不需要运行验证,它只是用于开发/调试依赖 pod。
  • 所以你在提交之前去掉依赖?
  • @Tieme 不,为什么?依赖项适用于真正的 pod。只是这种方法可以通过项目的 Podfile 为该依赖项安装本地 pod 的版本。对于 Pod 提交,您使用的是 *.podspec,而不是 Podfile。
【解决方案2】:

将本地依赖项放在您的 pod 文件夹根目录中, 在您的 Podspec 文件中,只需添加 s.ios.dependency 'YourRootPodName/YourPodDependencyFolder' 之后,像这样创建一个子空间:

s.subspec 'YourRootPodName' 做 |ss| ss.source_files = 'YourRootPodName/**/*.{h,m}' 结束

就像这个答案Cocoa podspec and path for dependency

【讨论】:

    猜你喜欢
    • 2018-05-24
    • 1970-01-01
    • 2015-03-09
    • 1970-01-01
    • 1970-01-01
    • 2014-01-09
    • 1970-01-01
    • 1970-01-01
    • 2013-11-02
    相关资源
    最近更新 更多