当我使用--watch参数时Sass问题

时间:2013-05-28 15:19:48

标签: sass

当我执行

行时
$sass --watch sass/views.scss:views.css

我收到以下消息

  
    
      

Sass正在关注变化。按Ctrl-C停止。       NameError:未初始化的常量Listen :: MultiListener       使用--trace进行回溯。

    
  

正如您所说,该过程会立即停止,并且监视选项不起作用。

这里有什么问题?我已经安装了Ruby 2.0.0-p0版本。

任何帮助表示感谢。

编辑:( - trace)

  
    
      

Sass正在关注变化。按Ctrl-C停止。       /home/javier/.rvm/gems/ruby-2.0.0-p0/gems/sass-3.2.8/lib/sass/plugin/compiler.rb:266:in watch': uninitialized constant Listen::MultiListener (NameError)
from /home/javier/.rvm/gems/ruby-2.0.0-p0/gems/sass-3.2.8/lib/sass/plugin.rb:107:in
method_missing'
          来自/home/javier/.rvm/gems/ruby-2.0.0-p0/gems/sass-3.2.8/lib/sass/exec.rb:452:in watch_or_update'
from /home/javier/.rvm/gems/ruby-2.0.0-p0/gems/sass-3.2.8/lib/sass/exec.rb:315:in
process_result'
          来自/home/javier/.rvm/gems/ruby-2.0.0-p0/gems/sass-3.2.8/lib/sass/exec.rb:41:in parse'
from /home/javier/.rvm/gems/ruby-2.0.0-p0/gems/sass-3.2.8/lib/sass/exec.rb:21:in
解析!'
          来自/home/javier/.rvm/gems/ruby-2.0.0-p0/gems/sass-3.2.8/bin/sass:9:in <top (required)>'
from /home/javier/.rvm/gems/ruby-2.0.0-p0/bin/sass:23:in
load'
          来自/home/javier/.rvm/gems/ruby-2.0.0-p0/bin/sass:23:in`'

    
  

4 个答案:

答案 0 :(得分:12)

我尝试了这些答案而没有用,所以我做了更多的研究。 Apparently,问题在于SASS正在使用的listen gem。 Sass只与listen 0.7兼容。

我能够通过运行以下两个命令(以root身份)来实现它:

gem uninstall listen
gem install listen -v 0.7.3

答案 1 :(得分:5)

我有同样的问题。您只需要在sudo模式下运行该命令。

sudo sass --watch sass/views.scss:views.css

答案 2 :(得分:3)

我通过卸载使用apt-get(ruby-sass)安装的原始sass并使用gem重新安装来修复它

答案 3 :(得分:2)

我修复了将sass gem更新到最新版本(3.2.9)的问题。我认为这个更新在使用他--watch参数时提供了与Ruby 2.0.0更好的兼容性。 一切都很好。