gpt4 book ai didi

ruby-on-rails - 为什么 "bundle install"是一个 gem 而不是 "gem install"用于 rails 3 应用程序?

转载 作者:行者123 更新时间:2023-12-03 10:36:20 25 4
gpt4 key购买 nike

我是一名初级程序员,正在经历 railstutorial作者 michael hartl,注意在应用程序中使用 gems 的过程是通过将它添加到 gemfile 中,然后执行以下操作:

$ bundle install

任何一个人不只是做一个的原因:
$ [sudo] gem install [the_gem]

然后将其添加到 Gem 文件中?我知道这在某种程度上是 Rails 2 中的过程。

谢谢!

最佳答案

使用 bundler 而不是 gem 命令直接安装你的 gem 会给你带来很多好处。

在这种特定情况下,您建议使用 gem 命令安装并稍后将其添加到 Gemfile,bundler 会在您安装 gem 时为您解析所有依赖项,否则您可能必须手动解析。

举个例子,让我们看看以下依赖项:

sunspot_rails
nokogiri (>= 1.2.0)

webrat
nokogiri (>= 1.3)

webrat 和 sunspot_rails gems 都需要不同版本的 nokogiri 作为依赖项。如果你只是使用 gem 命令来安装它们,它可能会安装两个版本的 nokogiri 或更糟的是提示版本冲突。 Bundler 将足够明智地解决这个依赖冲突并安装正确的版本(比如 nokogiri 1.3)并使 sunspot_rails 和 webrat 都满意!

对冗长的解释感到抱歉。但是,希望你明白这一点! :)

顺便说一句,你应该看看这个文件 Gemfile.lock看看 bundler 在幕后为你做了什么。

关于ruby-on-rails - 为什么 "bundle install"是一个 gem 而不是 "gem install"用于 rails 3 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7273853/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com