如何让 "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
。也许您需要使用 rvm
或 rbenv
.
安装它
/usr/bin/ruby -v
为您提供操作系统中安装的 ruby 版本。
您似乎已经 运行 rvm use --default 2.6.3
因为您的 ruby
指向 rvm
位置。
Ruby 环境管理器 RVM
支持在以下文件中配置:.rvmrc
、.versions.conf
、.ruby-version
、Gemfile
。更多信息:https://rvm.io/workflow/projects
检查这些文件,最好在 .ruby-version
或 Gemfile
.
中设置 ruby 版本
我安装了 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
。也许您需要使用 rvm
或 rbenv
.
/usr/bin/ruby -v
为您提供操作系统中安装的 ruby 版本。
您似乎已经 运行 rvm use --default 2.6.3
因为您的 ruby
指向 rvm
位置。
Ruby 环境管理器 RVM
支持在以下文件中配置:.rvmrc
、.versions.conf
、.ruby-version
、Gemfile
。更多信息:https://rvm.io/workflow/projects
检查这些文件,最好在 .ruby-version
或 Gemfile
.