【问题标题】:Broken upgrade to susy 2.1.2 cannot load such file -- sass/script/node升级到 susy 2.1.2 失败无法加载此类文件 -- sass/script/node
【发布时间】:2014-06-21 18:14:19
【问题描述】:

我刚刚从 1.0.9 版本更新到 susy 2.1.2,所以我预计会出现错误。

但是,我不知道这是什么意思。

我仍然安装了这两个版本:

Select gem to uninstall:
 1. susy-1.0.9
 2. susy-2.1.2
 3. All versions

运行我的compass:dev 时,我得到以下信息,尽管任务仍然完成。如何消除错误?

Running "compass:dev" (compass) task
C:/RUBY200/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:135:in `require': cannot load such file -- sass/script/node (LoadError)
        from C:/RUBY200/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:135:in `rescue in require'
        from C:/RUBY200/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:144:in `require'
        from C:/RUBY200/lib/ruby/gems/2.0.0/gems/compass-0.12.2/lib/compass/sass_extensions/monkey_patches/browser_support.rb:1:in `<top (required)>'
        from C:/RUBY200/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
        from C:/RUBY200/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
        from C:/RUBY200/lib/ruby/gems/2.0.0/gems/compass-0.12.2/lib/compass/sass_extensions/monkey_patches.rb:2:in `block in <top (required)>'
        from C:/RUBY200/lib/ruby/gems/2.0.0/gems/compass-0.12.2/lib/compass/sass_extensions/monkey_patches.rb:1:in `each'
        from C:/RUBY200/lib/ruby/gems/2.0.0/gems/compass-0.12.2/lib/compass/sass_extensions/monkey_patches.rb:1:in `<top (required)>'
        from C:/RUBY200/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
        from C:/RUBY200/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
        from C:/RUBY200/lib/ruby/gems/2.0.0/gems/compass-0.12.2/lib/compass/sass_extensions.rb:9:in `<top (required)>'
        from C:/RUBY200/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
        from C:/RUBY200/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
        from C:/RUBY200/lib/ruby/gems/2.0.0/gems/compass-0.12.2/lib/compass.rb:5:in `block in <top (required)>'
        from C:/RUBY200/lib/ruby/gems/2.0.0/gems/compass-0.12.2/lib/compass.rb:4:in `each'
        from C:/RUBY200/lib/ruby/gems/2.0.0/gems/compass-0.12.2/lib/compass.rb:4:in `<top (required)>'
        from C:/RUBY200/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
        from C:/RUBY200/lib/ruby/site_ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
        from C:/RUBY200/lib/ruby/gems/2.0.0/gems/compass-0.12.2/bin/compass:20:in `block in <top (required)>'
        from C:/RUBY200/lib/ruby/gems/2.0.0/gems/compass-0.12.2/bin/compass:8:in `fallback_load_path'
        from C:/RUBY200/lib/ruby/gems/2.0.0/gems/compass-0.12.2/bin/compass:19:in `<top (required)>'
        from C:/Ruby200/bin/compass:23:in `load'
        from C:/Ruby200/bin/compass:23:in `<main>'

Running "watch" task
Waiting...

【问题讨论】:

  • 您使用的是什么版本的 Compass 和 Sass?您是否仔细检查以确保它们与您使用的 Susy 版本兼容?
  • 看起来像 Compass 0.12.2,它与 Susy 2 不兼容。您需要使用 Compass 1.0(目前是预发布版)和 Sass 3.3。

标签: sass compass-sass susy-compass


【解决方案1】:

这是我在尝试使用 bundler 更新 Susy 时收到的消息。

susy (~> 2.1.2) ruby depends on
  sass (~> 3.3.0) ruby

compass (~> 0.12.6) ruby depends on
  sass (3.2.19)

这意味着您至少需要 Sass 3.3.0。 Compass 的最新 alpha 预发布版将支持此功能,您可以使用以下命令安装它:

gem install compass --pre

或者,如果您使用的是 Gemfile,您可以像这样安装它:

gem "compass", "~> 1.0.0.alpha.19"

【讨论】:

    【解决方案2】:

    您的 Gemfile 只需要这些:

    gem "susy", "~>2.1.0"
    gem "sass", "~>3.3.0"
    gem "breakpoint", "~>2.4.0"
    

    Bundler 将整理其他依赖项(很多),并将 gem 更新到最新版本。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-04-08
      • 1970-01-01
      • 2015-03-07
      • 2016-11-02
      • 2016-04-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多