2016-05-31 71 views
3

我想運行一個給定的任務,每當文件夾src中的文件發生變化時。如何在Gradle中安裝/運行監視任務

似乎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' 
    } 
} 

不幸的是這將導致一個錯誤:

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; 

那麼,什麼是錯我的build.gradle

回答

4

通過使用--continuous-t命令行參數啓用continuous mode,無需插件即可完成此操作。例如,運行以下構建腳本gradle -t myTask將自動監視文件夾src中的更改,並在這些文件更改時重新執行任務。

task myTask { 
    inputs.files 'src' 
    doLast { 
    // do some stuff with files in 'src' folder 
    } 
} 
+1

在Gradle博客中有一篇很好的文章:http://gradle.org/blog/feature-spotlight-continuous-build/。我在搜索您的錯誤消息時發現它:https://github.com/bluepapa32/gradle-watch-plugin/issues/25 –

相關問題