繁体   English   中英

我如何找出哪个 gem 具有特定的依赖关系?

[英]How do I find out which gem has a specific dependency?

我注释掉了一个 gem,但“捆绑安装”仍然无法运行。 如何找出哪个 gem 依赖于 sys-proctable?

$ bundle install
Fetching gem metadata from https://rubygems.org/.........
Fetching gem metadata from https://rubygems.org/..
Resolving dependencies...
Could not find sys-proctable-0.9.2 in any of the sources

$ grep proctable Gemfile
  #gem 'sys-proctable', '0.9.2', :path => "vendor/gems"

$ bundle list
Resolving dependencies...
Could not find gem 'rspec-rails (= 2.11.0) ruby' in the gems available on this machine.

$ bundle viz
Resolving dependencies...
Could not find gem 'rspec-rails (= 2.11.0) ruby' in the gems available on this machine.

$ bundle -v
Bundler version 1.3.0

$ ruby -v
ruby 1.9.3p385 (2013-02-06 revision 39114) [i386-cygwin]

Gemfile: http ://pastebin.com/9WWMfKtv

我已经尝试过这些故障排除步骤: https : //github.com/carlhuda/bundler/blob/1-2-stable/ISSUES.md

在 bash shell 中,您可以执行以下操作:

gem dependency name_of_the_gem --reverse-dependencies

例如:

$ gem dependency activesupport --reverse-dependencies                        
Gem activesupport-2.3.14
Used by
actionpack-2.3.14 (activesupport (= 2.3.14))
activerecord-2.3.14 (activesupport (= 2.3.14))
activeresource-2.3.14 (activesupport (= 2.3.14))

我知道这个答案包含一个链接,但这不是特定于链接的答案

您始终可以在rubygems.org上检查 gem 的反向依赖关系。 网站右侧面板上有一个链接。

在此处输入图片说明

或者您可以访问该网站

https://rubygems.org/gems/{gem_name}/reverse_dependencies

所以,在你的情况下

https://rubygems.org/gems/sys-proctable/reverse_dependencies

如何找出哪个 gem 依赖于 sys-proctable?

试试bundler-why插件(灵感来自yarn why

bundler plugin install bundler-why
bundle why tzinfo
# ransack -> activesupport -> tzinfo
# rspec-rails -> activesupport -> tzinfo
# business_time -> tzinfo

gem dependency --reverse-dependencies将遍历路径的单个边缘 相比之下, bundle why会遍历所有边。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM