我试图使用sass-asset-pipeline:2.9.4使用libsass而不是指南针。但是我的很多.scss文件都使用了libsass中没有的mixin,所以我找到了一个webjar,compass-mixin,它有我想要的mixins。
虽然资产管道找不到mixins,但在尝试符文ERROR asset.pipeline.jsass.SassAssetFileImporter - Unable to find the asset for compass imported by home.scss
时收到@import "compass";
错误消息。
我已尝试在导入中使用各种路径,因为资产管道说它适用于webjars。
如何让@import "compass";
工作?
答案 0 :(得分:0)
编辑:我自己的愚蠢回答,根本没用,对不起。
仍在搜索如何使指南针与grails / sass一起使用
答案 1 :(得分:0)
我最终得到的解决方案示例:
build.gradle中的
assets 'org.webjars.bower:compass-mixins:1.0.2'
bootRun {
dependsOn 'webjars resources extraction'
systemProperties = System.properties
}
task('webjars resources extraction', type: Copy) {
def jar = configurations.runtime.filter { it.name.contains('compass-mixins') }.first()
copy {
from zipTree(jar)
into "./grails-app/assets/stylesheets/vendor"
include 'META-INF/resources/webjars/compass-mixins/1.0.2/lib/**'
}
copy {
from "./grails-app/assets/stylesheets/vendor/META-INF/resources/webjars/compass-mixins/1.0.2/lib"
into "./grails-app/assets/stylesheets/vendor"
}
delete "grails-app/assets/stylesheets/vendor/META-INF"
}
assetClean {
delete 'grails-app/assets/stylesheets/vendor'
}
我还必须将.scss文件中的导入更改为:
@import "vendor/compass";
@import "vendor/compass/css3";
@Jeremy POUILLOT:你的解决方案似乎不那么重要了,虽然我注意到这个插件已经不再处于活跃开发阶段,而且它需要jruby。