我之前一直运行旧版本的 Ruby,版本 1.9.3,因为 Ubuntu apt-get
就是这样的。安装。 Sass 安装有 gem install sass
事情按计划进行。然而,Sass 总是告诉我“请升级 ruby。< 2.0.0 将很快不受支持”,所以我想这样做。我跑了sudo apt-get purge ruby rubygems libruby
并开始上类。
首先,我尝试使用rvm安装is,但效果不太好,所以我尽力将其删除,但我可能错过了一些东西,所以不排除这种情况。根据this guide ruby似乎已成功安装。然后我跑了 gem install sass
所以我可以编译一些CSS。以下是一些证明安装正确的相关输出:
$ chruby
ruby-2.1.9
* ruby-2.3.1
$ ruby -v
ruby 2.3.1p112 (2016-04-26 revision 54768) [x86_64-linux]
$ sass -v
Sass 3.4.22 (Selective Steve)
但是,当我尝试将 Sass 编译集成到 NetBeans 8.1 中时,编译器会对每个文件抛出此错误。
"~/.gem/ruby/2.3.1/bin/sass" "--cache-location" "~/.cache/netbeans/8.1/sass-compiler" "--debug-info" <sass input> <sass output>
~/.rubies/ruby-2.3.1/lib/ruby/2.3.0/rubygems/dependency.rb:319:in `to_specs': Could not find 'sass' (>= 0.a) among 11 total gem(s) (Gem::LoadError)
Checked in 'GEM_PATH=~/.gem/ruby/2.3.0:~/.rubies/ruby-2.3.1/lib/ruby/gems/2.3.0', execute `gem env` for more information
from ~/.rubies/ruby-2.3.1/lib/ruby/2.3.0/rubygems/dependency.rb:328:in `to_spec'
from ~/.rubies/ruby-2.3.1/lib/ruby/2.3.0/rubygems/core_ext/kernel_gem.rb:65:in `gem'
from ~/.gem/ruby/2.3.1/bin/sass:22:in `<main>'
每个文件都会出现此错误。
从周围阅读来看,这似乎可能是路径错误。但看起来我的路径设置是正确的。
$ echo $PATH
~/.gem/ruby/2.3.1/bin:~/.rubies/ruby-2.3.1/lib/ruby/gems/2.3.0/bin:~/.rubies/ruby-2.3.1/bin:~/bin:~/.gem/ruby/2.3.1/bin:~/.rubies/ruby-2.3.1/lib/ruby/gems/2.3.0/bin:~/.rubies/ruby-2.3.1/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
$ echo $GEM_PATH
~/.gem/ruby/2.3.1:~/.rubies/ruby-2.3.1/lib/ruby/gems/2.3.0
此时我愿意尝试任何事情。
编辑:有关为什么它可能是路径错误的更多信息。
whereis
对于 ruby、gem 和 sass 都不输出任何内容。 dpkg --get-selections | grep ruby
什么也不输出。 type ruby
输出 .rubies 目录的路径以及 type gem
和type sass
输出到 .gem 目录。
最佳答案
-
gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3
-
\curl -sSL https://get.rvm.io | bash -s stable
-
source /home/rvm/.rvm/scripts/rvm
-
rvm install <the ruby version you want e.g. 2.3.1>
关于ruby - 在 gem 总数中找不到 'sass',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37557092/