加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

CocoaPods阻止依赖安装

发布时间:2020-12-14 04:53:28 所属栏目:百科 来源:网络整理
导读:我没有在Podfile文档中找到答案,所以我不确定它是否可行. 我想安装一个有3个依赖项的CocoaPods项目.我将它添加到我的Podfile: pod’IDMPhotoBrowser’ 并运行安装: $pod installInstalling DACircularProgress (2.1.0)…Installing IDMPhotoBrowser (1.2)
我没有在Podfile文档中找到答案,所以我不确定它是否可行.

我想安装一个有3个依赖项的CocoaPods项目.我将它添加到我的Podfile:

pod’IDMPhotoBrowser’

并运行安装:

$pod install

Installing DACircularProgress (2.1.0)
…
Installing IDMPhotoBrowser (1.2)
…
Installing SVProgressHUD (0.9)

但是,我的项目中有一个hack up版本的SVProgressHUD,其中包含不在当前仓库中的代码.此外,SVProgressHUD 0.9是从1月开始的,此后还有几个月的额外提交.我想用我手动添加的版本代替.

我可以在我的Podfile中指定不应该安装SVProgressHUD,以便使用我手动添加的版本吗?或者我每次运行pod安装时都需要手动删除它?

备择方案

我知道我可以将我的fork上传到github并执行以下操作:

pod 'SVProgressHUD',:git => '<my git repo>',:commit => '<my sha>'

但我希望不需要上传代码只是为了让Cocoapods做我想做的事.

解决方法

阻止依赖关系并不是因为它依赖于你自己的依赖.这意味着CocoaPods需要在激活IDMPhotoBrowser并在主规范仓库中查找SVProgressHUD之前找到SVProgressHUD的本地副本.

您可以通过使用local podspec在Podfile中首先声明您的SVProgressHUD版本来实现所需的设置:

>您的自定义版本需要位于项目的子目录中,并在该目录的根目录下使用有效的podspec,例如External / SVProgressHUD / SVProgressHUD.podspec.
>像这样更新您的Podfile:

pod 'SVProgressHUD',:path => 'External/SVProgressHUD' # this needs to be declared first
pod 'IDMPhotoBrowser' # your custom pod will be used as the dependency here

如果您没有本地podspec,您应该能够获取0.9版本的SVProgressHUD的副本(如果需要,可以修改它以编译您添加的任何新代码).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读