Rails中的Gemfile依赖项

时间:2013-01-19 13:57:52

标签: ruby-on-rails ruby bundler gemfile

在Rails应用程序中,如果Gemfile中包含的某个gem依赖于我想要使用的另一个gem,我是否需要在Gemfile中包含第二个?

说,我使用cucumber-rails宝石。通过运行bundle dependency cucumber-rails,我可以看到它依赖于'database_cleaner'和factory_girl。我是否需要将前两个包含在Gemfile中?

谢谢!

3 个答案:

答案 0 :(得分:3)

不,您不需要在Gemfile中明确要求它们。 Bundler将检测依赖项,将它们包含在Gemfile.lock中并安装它们。

答案 1 :(得分:2)

如果使用bundler,那么在安装gem

时会安装任何依赖项

您可以在gemfile.lock

中看到相关性

但请注意,安装依赖项并不总是好的,假设安装的依赖项是您想要的gem版本。安装的依赖项是gem工作所需的版本。如果您需要最新版本(或任何其他版本)的工厂女孩​​,那么最好将其包含在gemfile

答案 2 :(得分:1)

我环顾四周,显然你不应该使用bundle依赖的cucumber-rails安装功能:

https://makandracards.com/makandra/12741-don-t-update-gems-with-bundle-update-unless-you-re-feeling-lucky