如何跟踪和检查捆绑的Ruby gem中的依赖项

Bundler将自动为指定的gem安装任何依赖项,但是它不会输出哪些依赖项映射到标准输出中的哪些gem。 当其中一个依赖项未能通过安装时,该信息很有用。

有没有办法将Bundler设置得更详细,并在安装时通知有关依赖项?

我使用的是Bundler 1.0.2

要查看依赖关系树的可视化表示,请运行bundle viz

 apt-get install graphviz && gem install ruby-graphviz && bundle viz 

它将生成树的PNG文件。

一个不那么激动但同样有效的方法就是:

 gem dep 

这将生成具有依赖项信息的Gemfile.lock样式输出。 你可以把这个输出管道less

 gem dep | less 

或者,如果您正在搜索失败的依赖项,则可以使用某些上下文进行grep。 例如,为了找出我的Thin依赖失败的来源(JRuby失败),我做了:

 gem dep | grep -C 15 thin