1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【Rails】Your Ruby version is 3.4.1, but your Gemfile specified 3.3.1の解決方法

Posted at

はじめに

業務でバックエンドの環境構築をしていた際、bundle installを実行したときに発生したエラーについてまとめます。

この記事は個人的なアウトプットを目的として作成したものです。そのため、誤った情報や不足している内容が含まれている可能性があります。もし間違いや気になる点がございましたら、ぜひご指摘いただけますと幸いです

現象

bundle installを実行した際、次のエラーが出ました。

Your Ruby version is 3.4.1, but your Gemfile specified 3.3.1

原因

Gemfileに指定されているRubyのバージョン (3.3.1) と、ローカルに入っているRuby(3.4.1) が異なっていたのが原因です。

解決方法

Step 1: 利用可能なバージョンを確認

まずは rbenv でインストールできる Ruby バージョンを確認します。

rbenv install -list

実際の出力は以下のような感じでした。

3.2.9
3.3.9
3.4.5
jruby-10.0.1.0
mruby-3.4.0
picoruby-3.0.0
truffleruby-24.2.1
truffleruby+graalvm-24.2.1

ここで 「3.3.1 がない!」 と混乱しましたが、表示されるのはあくまで「主要なバージョンや最新のもの」だけです。
実際にはバージョン番号を直接指定すればインストール可能です。

Step 2: 必要なバージョンをインストール

表示されていなくても、次のようにすればインストールできます。

rbenv install 3.3.1

Step 3: インストール済みバージョンを確認

インストールできたかどうかを確認します。

rbenv versions

Step 4: プロジェクトで使用するバージョンを設定

今回のプロジェクトでは 3.3.1 を使用するので、ローカル設定を切り替えます。

rbenv local 3.3.1

再度確認すると、プロジェクトで 3.3.1 が使われるようになっていました。

rbenv versions

system
* 3.3.1 (set by /Users/hoge/.ruby-version)

これで準備完了です。

終わりに

Rubyのバージョン違いでのエラーはよくありますが、rbenv install -listに表示されないバージョンも直接指定すれば入れられるという点を知らずに少しハマりました。

今後は「表示されない=インストール不可」と思い込まないように気をつけたいです。

参考

『【Rails】Your Ruby version is 3.0.2, but your Gemfile specified 2.7.2の対処法』Qiita

『Your Ruby version is 2.6.3, but your Gemfile specified 2.7.1』Qitia

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?