1
是this問題仍然存在?我正在嘗試使用input.files
作爲JavaExec
任務類型,最近使用了gradle 2.5並且沒有任何作用。無論輸入文件設置如何,每次都執行任務。使用inputs.file for JavaExec任務
所以,這裏是我的例子:
build.gradle
apply plugin: 'java'
task sayHello(type: JavaExec) {
inputs.files sourceSets.main.java
main = "com.question.HelloGradle"
classpath = sourceSets.main.runtimeClasspath
}
src/main/java/com/question/HelloGradle.java
package com.question;
public class HelloGradle {
public static void main(String[] args) {
System.out.println("Hello, Gradle!");
}
}
- gradlew建立
- gradlew的sayHello
- gradlew的sayHello
它將運行第二次,達不到最新
但解決方法僅執行一次
task sayHello(type: JavaExec) {
inputs.files sourceSets.main.java
outputs.upToDateWhen({ return true });
main = "com.question.HelloGradle"
classpath = sourceSets.main.runtimeClasspath
}
請提供一個示例runnable腳本。 – Opal
似乎我發現解決方案添加'outputs.upToDateWhen({return true});'到任務 –
這不是一個解決方案,而是一個解決方法。 – Opal