4

我的问题很简单,gem bundler 在根据 gem 文件决定采用哪个 gem 之前是否会考虑您的 ruby​​ 环境(例如 1.8.7 | 1.9.2)?

假设您的 gemfile 包含

gem 'thor'
gem 'json'
gem 'grit'

当您运行时,bundle install将采用与您当前的 ruby​​ 环境兼容的 gem 版本还是只是最新的 gem?

4

1 回答 1

2

这取决于!Bundler 依赖于每个 Gem 提供的 Gemspecs 的配置。

Gemspecs 提供了基于运行时环境提供不同或附加依赖项的可能性。IE 您可以更改 JRuby 的依赖项或为 i386 架构提供不同的二进制文件。

据我所知,不可能将 gem 声明为 1.9 或 1.8 兼容(这对我来说很有意义)。我认为部分是这样,因为 1.9 是 99% 向下兼容的。

您总是被迫查看宝石本身。正因为如此,有像http://isitruby19.com/这样的网站

如您所见,这不是 Bundler 的问题,而是 RubyGems 的问题。

于 2012-07-30T08:40:52.477 回答