如何在Gradle中安装/运行监视任务

Edw*_*ard 3 watch gradle build.gradle

每次文件夹中的文件src发生变化时,我都想运行一个给定的任务.

似乎Gradle没有这样的任务,但github上有gradle-watch-plugin.按照安装指南,我试过:

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.bluepapa32:gradle-watch-plugin:0.1.5'
    }
}   

apply plugin: 'com.bluepapa32.watch'

task "sometask" << {
  println "My Own task."
}


watch {
    somename {
        files files('src')
        tasks 'sometask'
    }
}
Run Code Online (Sandbox Code Playgroud)

不幸的是,这会导致错误:

Starting:watch FAILED

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':watch'.
> org.gradle.tooling.BuildLauncher.withArguments([Ljava/lang/String;)Lorg/gradle/tooling/BuildLauncher;
Run Code Online (Sandbox Code Playgroud)

那我的错了什么build.gradle

Mar*_*ira 7

这可以在没有插件的情况下完成,方法是通过或命令行参数在构建中启用连续模式.例如,给定以下构建脚本运行将自动监视文件夹src中的更改,并在这些文件更改时重新执行该任务.--continuous-tgradle -t myTask

task myTask {
  inputs.files 'src'
  doLast {
    // do some stuff with files in 'src' folder
  }
}
Run Code Online (Sandbox Code Playgroud)

  • Gradle 博客中有一篇很好的文章:http://gradle.org/blog/feature-spotlight-continuous-build/。我在搜索您的错误消息时发现了它:https://github.com/bluepapa32/gradle-watch-plugin/issues/25 (2认同)