升级 Ruby 版本和 Rails 兼容性
Upgrading Ruby version And Rails Compatibility
大家好,我想知道是否有人可以解释我遇到的问题,以便我了解发生了什么。
我目前正在 运行ning ruby 2.2.2 和 rails 5。我有一个小型测试应用程序,一切正常。我决定将 ruby 升级到版本 2.4.0,没有其他原因,我认为我应该知道如何去做以及由此产生的陷阱等,所以这是一个学习练习。
在将 ruby 更新到 2.4.0 后正常运行命令 rails -v
returns rails 未安装。如果我然后恢复到旧的 ruby 2.2.2 rvm use ruby-2.2.2
运行 rails -v
然后返回 rails 5.0.1。这里发生了什么事?
谢谢
RVM 为每个 Ruby 版本和 gem 集提供一个单独的 gem 目录。这意味着必须为每个修订和 gem 集显式安装 gems。通常迁移过程如下:
rvm use ruby-2.4.0
# or `rvm --default use ruby-2.4.0` if you want to use 2.4.0 from now on
gem install rails -v 5.0.1 # an example, use any version you like
gem install bundler
bundle install # to install all other project gems
扩展@Slava.K 的回答
I have a small test app and all is working fine. I decided to upgrade
ruby to version 2.4.0, for no other reason than I think I should know
how to do it and the resulting pitfalls etc, so a learning exercise.
- 当您将 ruby 升级到 2.4.0 时,这将成为您的新 ruby 版本
号,因此您不会参考
rails
和 bundler
.
- 您需要执行
gem install rails -v x.x.x
和 gem install
bundler
。
- 现在当您执行
rails -v
时,这将打印一个版本
给定 Ruby. 的安装数量 rails
After updating ruby to 2.4.0 which goes fine the command rails -v
returns rails not installed. If i then revert to the older ruby 2.2.2
rvm use ruby-2.2.2 run rails -v then rails 5.0.1 is returned. Whats
happening here?
- 正如我上面已经提到的,升级 Ruby 时必须安装 rails。所以没有安装 rails,没有要显示的版本号
gem env home
=> ../versions/jruby-1.7.12/lib/ruby/gems/shared
- 将显示安装 gem 的位置。
- 我更喜欢使用 rbenv 而不是
rvm
大家好,我想知道是否有人可以解释我遇到的问题,以便我了解发生了什么。
我目前正在 运行ning ruby 2.2.2 和 rails 5。我有一个小型测试应用程序,一切正常。我决定将 ruby 升级到版本 2.4.0,没有其他原因,我认为我应该知道如何去做以及由此产生的陷阱等,所以这是一个学习练习。
在将 ruby 更新到 2.4.0 后正常运行命令 rails -v
returns rails 未安装。如果我然后恢复到旧的 ruby 2.2.2 rvm use ruby-2.2.2
运行 rails -v
然后返回 rails 5.0.1。这里发生了什么事?
谢谢
RVM 为每个 Ruby 版本和 gem 集提供一个单独的 gem 目录。这意味着必须为每个修订和 gem 集显式安装 gems。通常迁移过程如下:
rvm use ruby-2.4.0
# or `rvm --default use ruby-2.4.0` if you want to use 2.4.0 from now on
gem install rails -v 5.0.1 # an example, use any version you like
gem install bundler
bundle install # to install all other project gems
扩展@Slava.K 的回答
I have a small test app and all is working fine. I decided to upgrade ruby to version 2.4.0, for no other reason than I think I should know how to do it and the resulting pitfalls etc, so a learning exercise.
- 当您将 ruby 升级到 2.4.0 时,这将成为您的新 ruby 版本
号,因此您不会参考
rails
和bundler
. - 您需要执行
gem install rails -v x.x.x
和gem install bundler
。 - 现在当您执行
rails -v
时,这将打印一个版本 给定 Ruby. 的安装数量 rails
After updating ruby to 2.4.0 which goes fine the command rails -v returns rails not installed. If i then revert to the older ruby 2.2.2 rvm use ruby-2.2.2 run rails -v then rails 5.0.1 is returned. Whats happening here?
- 正如我上面已经提到的,升级 Ruby 时必须安装 rails。所以没有安装 rails,没有要显示的版本号
gem env home
=>../versions/jruby-1.7.12/lib/ruby/gems/shared
- 将显示安装 gem 的位置。
- 我更喜欢使用 rbenv 而不是
rvm