我正在尝试设置gradle,以便我两次运行罗盘任务以编译两组CSS文件。
我在gradle文件中具有以下位来实现此目的:
buildscript {
dependencies {
classpath "com.github.robfletcher:compass-gradle-plugin:2.0.5"
}
apply plugin: "com.github.robfletcher.compass"
compass {
debugInfo = true
time = true
sourcemap = true
}
task compassWeb(type: com.github.robfletcher.compass.CompassTask) {
cssDir = file("src/main/webapp/web/css")
sassDir = file("src/main/sass/web")
}
task compassMobile(type: com.github.robfletcher.compass.CompassTask) {
cssDir = file("src/main/webapp/mobile/css")
sassDir = sassDir = file("src/main/sass/mobile")
}
processResources.dependsOn("compassMobile", "compassWeb")
每次我运行此命令时,都会收到相同的错误:
Execution failed for task ':compassMobile'.
> Illegal null value provided in this collection: [-S, compass, null, -- sourcemap, --time, --debug-info, --sass-dir, /Users/.../src/main/sass/mobile, --css-dir, /Users/.../src/main/webapp/mobile/css]
该错误似乎是'compass'脚本参数之后的null。
这似乎与CompassTask或JRubyExecTask有关。我尝试按照每个插件中的代码进行操作,但是无法弄清配置中缺少的内容。
或者,是否有更好的方法可以完成两次评分任务?
最佳答案
您必须指定要执行的任务类型。
如果您查看CompassTask内部,则有一个参数:String command
因此,将其添加到您的conf中:
task compassWeb(type: com.github.robfletcher.compass.CompassTask) {
command = "compile"
cssDir = file("src/main/webapp/web/css")
sassDir = file("src/main/sass/web")
}
关于gradle - (Robfletcher) compass Gradle -多次执行-无效的Null值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36625938/