是否可以向.podspec文件添加本地依赖项?

Luc*_*tti 17 dependency-management cocoapods

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

s.dependency = 'my pod', :path => ''
Run Code Online (Sandbox Code Playgroud)

但我觉得不可能,有些想法?

nor*_*lin 16

我面对同样的问题,经过大量的谷歌搜索和询问CocoaPods github,我终于找到了合适的答案.

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

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

s.dependency = 'my pod', '~> 1.0' # or whatever version you have
Run Code Online (Sandbox Code Playgroud)

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

pod 'my pod', :path => '/path/to/the/local/my_pod'
Run Code Online (Sandbox Code Playgroud)

然后运行pod install,您将看到两个pod作为开发窗格.

当你同时开发2个pod(其中一个是依赖于另一个)时,这种方式非常有用,但是对于发布,你仍然需要将你的pod发布到repo(CocoaPods或私人仓库).

  • 执行此操作时,对 podspec 的验证失败。`(无法找到“MyLib”依赖的“yoga”规范) (3认同)
  • 所以你在提交之前删除了依赖? (2认同)
  • @Tieme不,为什么?依赖关系是一个真正的豆荚。只是这种方法允许通过项目的Podfile为该依赖项安装本地pod的版本。对于Pod提交,您使用的是* .podspec,而不是Podfile。 (2认同)

小智 1

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

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

正如这个答案中的Cocoa podspec and path for dependency