您的 Ruby 版本是 2.6.10,但您的 Gemfile 指定为 3.3.0

问题描述 投票:0回答:1

我已经完成了所有的修复。我没有/也没有在这台机器上安装过 ruby 2.6.10。我不确定这是从哪里来的。我尝试回归到 ruby 3.2.0,但恢复到我无法运行

rails s
rails c
而不出现此错误

Ignoring racc-1.8.0 because its extensions are not built. Try: gem pristine racc --version 1.8.0
Ignoring bigdecimal-3.1.8 because its extensions are not built. Try: gem pristine bigdecimal --version 3.1.8
Ignoring io-console-0.7.2 because its extensions are not built. Try: gem pristine io-console --version 0.7.2
Ignoring psych-5.1.2 because its extensions are not built. Try: gem pristine psych --version 5.1.2
Ignoring stringio-3.1.1 because its extensions are not built. Try: gem pristine stringio --version 3.1.1
Ignoring bigdecimal-3.1.8 because its extensions are not built. Try: gem pristine bigdecimal --version 3.1.8
Ignoring io-console-0.7.2 because its extensions are not built. Try: gem pristine io-console --version 0.7.2
Ignoring psych-5.1.2 because its extensions are not built. Try: gem pristine psych --version 5.1.2
Ignoring stringio-3.1.1 because its extensions are not built. Try: gem pristine stringio --version 3.1.1
fIgnoring bigdecimal-3.1.8 because its extensions are not built. Try: gem pristine bigdecimal --version 3.1.8
Ignoring bindex-0.8.1 because its extensions are not built. Try: gem pristine bindex --version 0.8.1
Ignoring bootsnap-1.18.3 because its extensions are not built. Try: gem pristine bootsnap --version 1.18.3
Ignoring bson-5.0.0 because its extensions are not built. Try: gem pristine bson --version 5.0.0
Ignoring byebug-11.1.3 because its extensions are not built. Try: gem pristine byebug --version 11.1.3
Ignoring date-3.3.4 because its extensions are not built. Try: gem pristine date --version 3.3.4
Ignoring debug-1.9.2 because its extensions are not built. Try: gem pristine debug --version 1.9.2
Ignoring ffi-1.16.3 because its extensions are not built. Try: gem pristine ffi --version 1.16.3
Ignoring io-console-0.7.2 because its extensions are not built. Try: gem pristine io-console --version 0.7.2
Ignoring jaro_winkler-1.5.6 because its extensions are not built. Try: gem pristine jaro_winkler --version 1.5.6
Ignoring json-2.7.2 because its extensions are not built. Try: gem pristine json --version 2.7.2
Ignoring msgpack-1.7.2 because its extensions are not built. Try: gem pristine msgpack --version 1.7.2
Ignoring nio4r-2.7.3 because its extensions are not built. Try: gem pristine nio4r --version 2.7.3
Ignoring pg-1.5.6 because its extensions are not built. Try: gem pristine pg --version 1.5.6
Ignoring prism-0.30.0 because its extensions are not built. Try: gem pristine prism --version 0.30.0
Ignoring psych-5.1.2 because its extensions are not built. Try: gem pristine psych --version 5.1.2
Ignoring puma-6.4.2 because its extensions are not built. Try: gem pristine puma --version 6.4.2
Ignoring racc-1.8.0 because its extensions are not built. Try: gem pristine racc --version 1.8.0
Ignoring rbs-3.5.1 because its extensions are not built. Try: gem pristine rbs --version 3.5.1
Ignoring rbs-2.8.4 because its extensions are not built. Try: gem pristine rbs --version 2.8.4
Ignoring sassc-2.4.0 because its extensions are not built. Try: gem pristine sassc --version 2.4.0
Ignoring stringio-3.1.1 because its extensions are not built. Try: gem pristine stringio --version 3.1.1
Ignoring strscan-3.1.0 because its extensions are not built. Try: gem pristine strscan --version 3.1.0
Ignoring websocket-driver-0.7.6 because its extensions are not built. Try: gem pristine websocket-driver --version 0.7.6
Your Ruby version is 2.6.10, but your Gemfile specified 3.3.0

有人知道这可能是什么吗?

我的Gemfile、.ruby-version都使用3.3.0 我使用asdf来管理版本,我已经卸载并重新安装了ruby 3.3.0很多次。我已经重新调整了。我尝试过更新bundler和rubygems。我只是不知道它如何尝试引用我从未安装过的版本。

我也尝试过

asdf uninstall ruby 3.3.0
rm -rf ~/.gem/gems
rm -rf ~/.gem/specs
gem cleanup
asdf install ruby 3.3.0
gem install bundler

但是每当我尝试做一些与 Rails 相关的事情时,都会出现上述错误:(

编辑我可以使用

bundle exec rails s|c
但我之前不需要这个先决条件:(

ruby-on-rails ruby asdf
1个回答
0
投票

您是否正在使用 rvm 或 rbenv 来管理默认的 ruby 版本而没有意识到?在终端中输入

rvm
rbenv
查看它们是否已安装。 另请检查您是否没有使用 Homebrew 安装 ruby。

如果您没有使用 ruby 版本管理器,您也许应该使用上述任一版本管理器。这将使您绝对确定您正在运行的 ruby 版本。

© www.soinside.com 2019 - 2024. All rights reserved.