gpt4 book ai didi

ios - Pod 规范中的 Cocoapods 依赖项不起作用

转载 作者:IT王子 更新时间:2023-10-29 07:40:22 24 4
gpt4 key购买 nike

我收到此规范文件的语法错误:

Pod::Spec.new do |s|

s.name = "BSImageLoader"

s.version = "0.1.3"

s.summary = "The image loading framework for PicPoc"

s.homepage = "https://bitbucket.org/boolalsofware/bsimageloader"

s.license = 'MIT'

s.author = { "Spencer Comerford" => "Spencevail@gmail.com" }

s.source = { :git => "git@bitbucket.org:boolalsofware/bsimageloader.git", :tag => "0.1.3" }

s.source_files = 'Classes/*.{h,m}', 'Classes/PublicHeaders/*'

s.public_header_files = 'Classes/PublicHeaders/*.h'

s.dependency = 'BSTiledImageView', :git => 'git@bitbucket.org:boolalsofware/bstiledimageview.git'

s.frameworks = 'QuartzCore', 'AssetsLibrary', 'UIKit'

s.requires_arc = true

end

问题在于指向 bitbucket 存储库的依赖项。我已经让它与本地依赖项一起工作,但出于某种原因,它无法使用 git repo。感谢您的帮助!

最佳答案

我遇到了同样的问题,发现有 another way to solve this problem in old manner (感谢@eliperkins)。

假设您有一个主项目Downloader,它使用较小的项目Player,而后者依赖于微型项目FFMpegPlayer。所以你想要的是在你的 Player.podspec 中有一个依赖,它看起来像这样:

s.dependency = 'FFMpegPlayer', :git => '...FFMpegPlayer.git' or 
s.dependency = 'FFMpegPlayer', :local => '../FFMpegPlayer'
s.dependency = 'FFMpegPlayer', :path => '../FFMpegPlayer'
s.dependency = 'FFMpegPlayer', :podspec => '../FFMpegPlayer/FFMpegPlayer.podspec'

但是对于最新版本的 Pod,所有这一切都不起作用,事实证明 :localv0.17.1 之前作为副作用起作用

从现在开始,您可以在 Player.podspec 中指定干净的依赖关系:

s.dependency = 'FFMpegPlayer' (its ok if that spec does not exist in public)

Downloader(主项目)的 Podfile 中,您只需指定 FFMpegPlayer before 播放器 pod:

pod 'FFMpegPlayer', :path => '../FFMpegPlayer' (micro project)
pod 'Player', :path => '../Player' (small project which depends on FFMpegPlayer)

因此,基本上,您所有的子 pod 现在都列在主 Podfile 中,这保证了 pod 版本之间没有冲突。

关于ios - Pod 规范中的 Cocoapods 依赖项不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16905112/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com