我安装了Ruby (v2.6.3)
和Rails (v5.2.3)
。
甚至完成了有关此框架的培训项目。
然后,他开始了一个工作项目,首先执行了命令bundle install
。
除了一个“ sassc-2.0.1”
安装失败,并显示以下错误:
sassc-2.0.1需要红宝石版本> = 2.3.3,与当前版本不兼容,红宝石2.3.1p112
也就是说,我选择了一个版本,而实际上使用了另一个版本。 我不明白原因。
但是我没有第一次放弃。 我试图以不同的方式检查ruby版本:
(1)获取红宝石版本
$> ruby -v
ruby 2.6.3p62 (2019-04-16 revision 67580) [x86_64-linux]
(2)获取通往bin的红宝石的路径
$> which ruby
/home/vdenisov/.rvm/rubies/ruby-2.6.3/bin/ruby
(3)获取分发包的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]
PS:在此之前,我在nodejs中编程,并且有一个版本管理器“ nvm”-在系统中运行命令“ nvm use abc”时,请始终使用nodejs版本的“ abc”(与我期望的相同) “ rvm”)。
答案 0 :(得分:2)
/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版本。
答案 1 :(得分:0)
bundler
面向Ruby版本,锁定在Gemfile.lock
中。只需在Gemfile
中更改Ruby版本(而不是.lock)。首先尝试2.3.3
。也许您需要使用rvm
或rbenv
安装它。