【发布时间】:2014-07-26 17:27:23
【问题描述】:
我在安装了多个版本的 Compass 和 Sass 的共享服务器上。
最新版本的 Compass (0.12.6) 依赖于 Sass 3.2.19,其中 3.3.8 是机器上安装的最新版本。
CSS 编译依赖于 grunt 和 grunt-sass-contrib。
我正在寻找一种方法来指定在 Grunt 构建过程中使用的 Sass 版本或 Compass 版本。
我已经测试了最新的 Compass 预发布版本,它工作正常:compass install --pre,但无法全局安装,因为其他项目依赖于以前的版本。同样,如果我将 Sass 版本回滚到 3.2.19,我的项目可以编译,但其他项目会受到影响。
我也可以让 Sass 使用 compass watch 并强制版本号进行编译,但这需要通过 Grunt 而不是 Compass 编译。
我在 Windows 上无法使用 RVM。调查 Bundler (Grunt/Bundler wont use specified sass version),似乎它可能会取得成果,但 Grunt 需要作为独立运行,所以我无法运行 cmets 中提到的命令 bundle exec grunt。
有没有人遇到过这种情况?
【问题讨论】:
-
我不确定我是否理解这里的问题。如果 Compass 需要特定版本的 Sass,那么它将只使用该版本的 Sass。您根本无法将 Sass 3.3.8 与 Compass 0.12.6 一起使用,因为依赖项不匹配:Compass 将尝试使用可用的最新版本的 Sass 3.2。
-
compass watch工作正常 - 但使用 grunt-contrib-sass 通过 grunt 脚本运行 Sass 编译会返回错误Cannot load compass
标签: gem sass gruntjs bundler compass-sass