在 Rails 应用程序中,如果 Gemfile 中包含的其中一个 gem 依赖于我要使用的另一个 gem,我是否需要在 Gemfile 中包含第二个?
说,我用cucumber-rails
宝石。通过运行bundle dependency cucumber-rails
,我可以看到它依赖于 'database_cleaner' 和factory_girl
. 我是否需要将前两者包含到 Gemfile 中?
谢谢!
在 Rails 应用程序中,如果 Gemfile 中包含的其中一个 gem 依赖于我要使用的另一个 gem,我是否需要在 Gemfile 中包含第二个?
说,我用cucumber-rails
宝石。通过运行bundle dependency cucumber-rails
,我可以看到它依赖于 'database_cleaner' 和factory_girl
. 我是否需要将前两者包含到 Gemfile 中?
谢谢!
不,您不需要在 Gemfile 中明确要求它们。Bundler 将检测依赖项,将它们包含在您的 Gemfile.lock 中并安装它们。
如果您使用捆绑器,那么它会在您安装 gem 时安装任何依赖项
你可以看到依赖关系gemfile.lock
但请注意,安装依赖项并不总是假设安装的依赖项是您想要的 gem 版本。安装的依赖项是 gem 工作所需的版本。如果您需要最新版本(或任何其他版本)的 factory-girl,那么最好将其包含在gemfile
我环顾四周,显然你不应该使用捆绑依赖 cucumber-rails install 功能: