【Rails】Ruby on Railsのバージョンを下げる方法を実例で解説|指定したバージョンをインストールして、ダウングレードする手順

rails-prograshi(プロぐらし)-kv Rails
記事内に広告が含まれていることがあります。

rails new <アプリ名>で新しいRailsのアプリケーションを作成すると、インストール済みのRialsの中の最新のバージョンが使用されます。

Railsのバージョンが新しいすぎる場合、アプリケーションの中で使用しているgemのパッケージが対応しておらず使用できない場合があります。

ここではそんなときに、ダウングレードした昔のバージョンでRialsアプリケーションを作成する方法についてまとめています。


現在インストールされているRailsのバージョンを確認する

まずは、「gem list rails」コマンドを使って、現在インストールされているRailsのバージョンを確認します。

$ gem list rails


実例

#現在インストール済みのバージョンを確認
$ gem list rails

*** LOCAL GEMS ***

bulma-rails (0.9.1)
rails (6.1.3)
rails-dom-testing (2.0.3)
rails-html-sanitizer (1.3.0)
sass-rails (6.0.0)
sassc-rails (2.1.2)
sprockets-rails (3.2.2)

この場合、「rails (6.1.3)」となっているので、インストールされているRailsのバージョンは「6.1.3」のみであることがわかります。

以下で、このRails「6.1.3」をRails「5.1.4」(5系の最新版)にダウングレードします。


Railsのバージョンを指定してインストールする

ダウングレードしたいRailsのバージョンがインストールされていない場合は、別途インストールする必要があります。

$ gem install -v <バージョン> rails

実例

Railsの「5.2.4」をインストールする場合は以下のようになります。

#5系のインストール
$ gem install -v 5.2.4 rails

実行後に、再度「gem list rails」を実行して、インストール済みのパッケージを確認します。

$ gem list rails

*** LOCAL GEMS ***

bulma-rails (0.9.1)
rails (6.1.3, 5.2.4.5)
rails-dom-testing (2.0.3)
rails-html-sanitizer (1.3.0)
sass-rails (6.0.0)
sassc-rails (2.1.2)
sprockets-rails (3.2.2)

すると、rails (6.1.3, 5.2.4.5)と表示され、もともとの「6.1.3」に加えて、「5.3.4.5」が追加されたことがわかります。


バージョンを指定してRailsアプリケーションを作成する

バージョンを指定してRailsアプリケーションを作成するには以下のコマンドを実行します。

$ rails _バージョン_ new <プロジェクト名>


実例

バージョン「5.2.4」のRailsを使って、「rails-demo」という名前のアプリケーションを作成する場合は以下のようになります。

#アプリの作成
$ rails _5.2.4_ new rails-demo

#サーバー起動
$ cd rails-demo
$ rails s


エラーが出る場合の対処法

rails sを実行したときに以下のようなエラーが発生することがあります。

/Users//.rvm/gems/ruby-2.7.0/gems/msgpack-1.4.2/lib/msgpack.rb:8:in `require': incompatible library version - /Users//.rvm/gems/ruby-2.7.0/gems/msgpack-1.4.2/lib/msgpack/msgpack.bundle (LoadError)

これは、現在のパッケージがダウングレードしたRailsのバージョンと互換性がないために発生するエラーです。

対処法は、以下を実行して、パッケージをインストールしなおします。

$ bundle install --path vendor/bundle

これで、このプロジェクト用にダウングレードしたgemのダウンロードが完了します。

サーバーを起動します。

$ rails s

URLにアクセスすると、Railsが正しく起動していることがわかります。

バージョンも「5.2.4.5」というダウングレードしたものになっています。


タイトルとURLをコピーしました