2016-08-19 143 views
2

我最近有一個關於gradle任務的奇怪問題。控制gradle任務執行順序

假設我有一個簡單配置的gradle如下

apply plugin: "java" 
apply plugin: "maven" 

buildscript { 
    repositories { 
     maven { 
      url "https://plugins.gradle.org/m2/" 
     } 
    } 
    dependencies { 
     classpath "com.diffplug.gradle.spotless:spotless:2.0.0" 
    } 
} 

apply plugin: "com.diffplug.gradle.spotless" 


spotless { 
    java { 
     eclipseFormatFile 'format.xml' // XML file dumped out by the Eclipse formatter 
    } 
} 

spotlessJavaCheck.dependsOn(processResources) 

version = '1.0-SNAPSHOT' 

我只是想設置取決於爲一塵不染檢查的關係。我運行構建後,錯誤看起來像這樣

> Could not find property 'spotlessJavaCheck' on root project 'gradle-helloworld'. 

我已經做了與其他插件類似的東西,它工作得很好,但不適合這個一塵不染插件。

BR,

回答

2

無專搖籃插件不魔術在配置時間。

您需要設置評估時間後的依賴性,一旦魔術完成

afterEvaluate { 
    tasks['spotlessJavaCheck'].dependsOn processResources 
}