有人能解释一下为什么 gem 认为我没有 builder >= 2.1.2 即使我明明有 3.0.0 吗?
jason@ve:~$ gem install rails --pre
ERROR: Error installing rails:
activemodel requires builder (~> 2.1.2, runtime)
jason@ve:~$ gem list
*** LOCAL GEMS ***
abstract (1.0.0)
activesupport (3.0.3, 3.0.0.rc2)
builder (3.0.0)
erubis (2.6.6)
i18n (0.5.0)
mail (2.2.13)
memcache-client (1.8.5)
mime-types (1.16)
polyglot (0.3.1)
rack (1.2.1)
rack-mount (0.6.13)
rack-test (0.5.6)
text-format (1.0.0)
text-hyphen (1.0.0)
treetop (1.4.9)
tzinfo (0.3.23)
jason@ve:~$
答案1
该~> 2.1.2
标识表示“大于或等于版本 2.1.2,但不包括下一个主要版本”。对于像 2.1.2 这样的三部分版本,这意味着 builder 2.1.2、2.1.3、2.1.4 等都有效,但 2.2.0 或 3.0.0 则无效。