在我的SpringBoot2.0Gradle项目中,每次在eclipse中修改和保存bar.tmpl.html时,我都需要调用下面的逗号:
handlebars src/main/resources/static/templates/bar.tmpl.html -f src/main/resources/static/js/bar.tmpl.js当在spring项目目录根目录的shell中运行时,此命令可以工作。
我想在使用devtools在STS eclipse中开发时自动化这个过程。每次对工具栏模板文件进行编辑时,都应该自动重新生成运行在上面命令中的项目。
如何做到这一点?
发布于 2018-05-02 19:27:46
您可以编写一个自定义的exec类型任务来运行您的命令,并让它执行连续式。或者,您可以将任务挂钩到生命周期中的某个点,例如processResources任务。
运行命令的Exec类型任务:
task updateHandelbar(type: Exec) {
inputs.files "${projectDir}/src/main/resources/static/templates/bar.tmpl.html"
outputs.files "${projectDir}/src/main/resources/static/templates/bar.tmpl.html"
commandLine 'cmd', '/c', 'handlebars src/main/resources/static/templates/bar.tmpl.html -f src/main/resources/static/js/bar.tmpl.js'
}将任务挂钩到生命周期中的任意点:
语法:<someTask>.shoudlRunAfter(<anotherTask>)
示例:processResources.shouldRunAfter(updateHandelbar)
连续运行任务并等待文件更改:
这将持续执行任务。意味着当输入文件更改时,它将重新运行任务:
gradlew <someTask> -continuous每个代码段的组合可能允许您获得预期的行为。
https://stackoverflow.com/questions/50140872
复制相似问题