当我安装另一个gem时,如何知道为什么安装了特定的gem?
也就是说,是否有一种简单的方法可以找出依赖的来源? gem安装失败,因此gem依赖不起作用,因为它只处理已安装的gem。这就是为什么我想要追踪依赖性,它打破了安装,似乎不应该是必要的。
是否有工具可以帮助跟踪尚未安装的宝石之间的依赖关系?也许是一个打印依赖树的秘密bundlerswitch?
UPDATE 他们刚刚发布了新版本的twitter-bootstrap-rails,可以解决问题。尽管如此,如果有一种方法可以跟踪未安装的宝石的依赖图,那将会非常有用。
这是失败的命令,在Windows上运行JRuby
gem install twitter-bootstrap-rails
不知何故,这会导致安装旧版本的libv8 gem,然后无法安装。 twitter-bootstrap-rails没有在它的gem_spec中列出libv8,只有therubyrhino和less-rails,这取决于其他人和其他人...有人最终依赖于旧版本的libv8(v3.3.10.4)。问题是哪个gem导致对libv8的依赖?
这是我的环境。
RubyGems Environment:
- RUBYGEMS VERSION: 1.8.15
- RUBY VERSION: 1.9.2 (2012-02-22 patchlevel 312) [java]
- INSTALLATION DIRECTORY: c:/jruby-1.6.7/lib/ruby/gems/1.8
- RUBY EXECUTABLE: c:/jruby-1.6.7/bin/jruby.exe
- EXECUTABLE DIRECTORY: c:/jruby-1.6.7/bin
- RUBYGEMS PLATFORMS:
- ruby
- universal-java-1.7
- GEM PATHS:
- c:/jruby-1.6.7/lib/ruby/gems/1.8
- c:/Users/alex/.gem/jruby/1.9
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :benchmark => false
- :backtrace => false
- :bulk_threshold => 1000
- "install" => "--no-rdoc --no-ri --env-shebang"
- "update" => "--no-rdoc --no-ri --env-shebang"
- REMOTE SOURCES:
- http://rubygems.org/
答案 0 :(得分:1)
如果您可以在MRI下安装它,您可以使用gemviz来显示依赖图,如下所示:
gemviz twitter-bootstrap-rails
应该可以使用未安装的宝石(必须有一个网站来执行此操作),但gemviz不能这样做。
编辑:以下是依赖关系图:
所以 therubyracer 取决于 libv8 。那里有很多依赖..