如何让 "bundle install" 命令只查看 "ruby"(我选择的)的当前版本?

How do I get the "bundle install" command to only look at the current version of "ruby" (which I chose)?

我安装了 Ruby (v2.6.3)Rails (v5.2.3)

甚至完成了这个框架的培训项目。 然后他开始了一个工作项目,首先执行命令bundle install。 所有模块都正常交付,除了一个 "sassc-2.0.1"

安装失败并出现此错误:

sassc-2.0.1 requires ruby version >= 2.3.3, which is incompatible with the current version, ruby 2.3.1p112

也就是我选择了一个版本,实际上用的是另一个版本。 我不明白这是为什么。

但我没有第一次放弃。 我尝试以不同的方式检查 ruby 版本:

(1) 获取 ruby 版本

$> ruby -v
ruby 2.6.3p62 (2019-04-16 revision 67580) [x86_64-linux]

(2) 获取 ruby

的 bin 路径
$> which ruby
/home/vdenisov/.rvm/rubies/ruby-2.6.3/bin/ruby

(3) 获取 bundle

的 bin 路径
$> which bundle
/home/vdenisov/.rvm/rubies/ruby-2.6.3/bin/bundle

所有这些命令都表明 ruby 的当前版本是 2.6.3

不过朋友建议我再做一次检查

(4) WTF ???

$> /usr/bin/ruby -v
ruby 2.3.1p112 (2016-04-26) [x86_64-linux-gnu]

P.S.: 之前我在 nodejs 中编程并且有一个版本管理器 "nvm" - 当你在系统中 运行 命令 "nvm use a.b.c" 时,总是使用"a.b.c" 的 nodejs 版本(与我对 "rvm" 的预期相同)。

bundler gem 面向 Ruby 版本,锁定在 Gemfile.lock。只需更改 Gemfile 中的 Ruby 版本(不是 .lock)。首先尝试 2.3.3。也许您需要使用 rvmrbenv.

安装它

/usr/bin/ruby -v 为您提供操作系统中安装的 ruby 版本。

您似乎已经 运行 rvm use --default 2.6.3 因为您的 ruby 指向 rvm 位置。

Ruby 环境管理器 RVM 支持在以下文件中配置:.rvmrc.versions.conf.ruby-versionGemfile。更多信息:https://rvm.io/workflow/projects

检查这些文件,最好在 .ruby-versionGemfile.

中设置 ruby 版本