0
我正在尝试在Gradle中实现缩小任务。以下是我的代码: -Gradle中的缩小任务
plugins {
id "com.eriwen.gradle.js" version "2.14.1"
}
import com.eriwen.gradle.js.tasks.MinifyJsTask
task minify() {
def index = 1
def dynNames = []
javascript.source {
custom {
js {
srcDir "$pExplodedFolderPath"
include "**/*.js"
exclude "**/*.min.js"
}
}
}
javascript.source.custom.js.files.eachWithIndex {fileSrc, idx ->
def dynName = "minifyTask_${index++}"
task "${dynName}"(type:MinifyJsTask) {
source = file(fileSrc.absolutePath)
dest = "/Users/user.name/Documents/" + fileSrc.getParentFile().getName() + "/" + fileSrc.name + ".min.js"
closure {
warningLevel = 'DEBUG'
compilationLevel = 'SIMPLE_OPTIMIZATIONS'
}
}
dynNames << dynName
}
dependsOn dynNames
}
当我运行它,它打印“无源”的所有文件。任何人都可以在这里帮助我做错吗?
但是,如果我'println',我可以看到所有文件。这不是说它应该工作吗? 如果不是,你能通过我的代码给我一个小例子吗?哪一部分放在doLast中? – user3279692
正如我所说的,你的代码**是**运行,但在错误的时间**。在Gradle中,您有初始化阶段,配置阶段和执行阶段。你的代码是在配置阶段运行,不管任务是否应该运行与否,并在执行阶段,有没有为你做任务,因此将被跳过,'NO-SOURCE'。 – Vampire
吸血鬼:如果你可以根据我的代码给出一个例子,那真的很有帮助。我知道摇篮的三个阶段,但只要我看到的例子,我没有看到需要doLast。例如: https://raw.githubusercontent.com/Canadensys/canadensys-common/master/gradle/canadensys_web_build.gradle 多一点帮助请求。 谢谢 – user3279692