ruby-on-rails - rails 3.2 使用的默认 gem

标签 ruby-on-rails ruby ruby-on-rails-3.2

我是 rails 的新手。我刚刚安装了 Bundle,并注意到 Rails 需要很多 gem 才能启动。

我只想知道是否有 rails 每次安装的默认 Gem 列表。

我知道这听起来有点奇怪,但我想知道它。

最佳答案

我理解你的困惑,所以让我解释一下。默认情况下,您的 Gemfile 只需要几个 gem,其中有 rails。但是您会看到在全新的 bundle install 上安装了数十个 gem。 问题是 gems 通常依赖于其他 gems,而它们又可以依赖于其他 gems。例如,转到 ruby​​gems.org 并查找 rails gem。在那里你会看到这个 gem 的依赖项。通过转到每个依赖的 gem,您将看到它们各自的依赖项。

Bundler 在创建完整的 gem 列表时构建一个数据结构,这个数据结构称为依赖图。一旦有了这个数据结构,它就会创建一个 Gemfile.lock - 一个特殊的快照依赖文件,其中包含所有您的应用程序所需的 gem。

关于ruby-on-rails - rails 3.2 使用的默认 gem,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15675906/

相关文章:

ruby-on-rails-3 - 没有路由匹配 [DELETE] "/models.id"错误

ruby-on-rails - 通过生成器添加从 Rails 引擎 gem 到应用程序的新迁移

javascript - Backbone.js 应用程序能否逐步增强并可被搜索引擎抓取?

ruby-on-rails - 在 Rails 中以毫秒为单位存储时间

ruby-on-rails - 如何从我的 Rack 应用程序中删除 "Server"HTTP 响应 header

Ruby 哈希初始化 : is this niftyness possible?

javascript - 尝试在 js.erb 文件中使用 Controller 变量时抛出 NoMethodError

ruby-on-rails - Heroku 部署上的 Rails 配置失败

java - 以跨平台方式维护 Mysql 数据库模式的最佳实践是什么?

ruby - 为什么我在 Rails 控制台 (irb) 中运行 shell 命令时出错