[英]File dependency Gradle
我是一個gmake用戶,正在過渡到Gradle。 我有一個多項目結構,其中一個子項目是一個Java項目,另一個子項目是一種自制語言。 自制語言不使用任何Gradle插件。 現在,我想添加一個任務,該任務在我修改了任何自制的源文件后,都會運行一個Java程序來生成XML。 在make中,我只想在目標名稱旁邊聲明對inputFile.mine或* .mine的依賴關系,但是我不容易找到如何使用Gradle進行此基本操作。 當前,我強迫任務始終使用以下可能很難解決的方法執行。 我想用一些dependsOn * .mine代替它。 Gradle用戶指南有一整章專門介紹了指定文件的不同方法,但是我沒有看到如何聲明依賴項。
task generateXML(type: Exec) {
generateXML.getOutputs().upToDateWhen({false}) // Force it to execute always
executable("java.exe")
args("-jar", "resources/generateXml.jar", "src/inputFile.mine")
}
感謝您幫助新手。
您可以在Gradle中定義任務輸入和輸出。
例如:
task generateXML(type: Exec) {
inputs.file ("src/inputFile.mine")
executable("java.exe")
args("-jar", "resources/generateXml.jar", "src/inputFile.mine")
}
有關更多信息,請參見https://docs.gradle.org/current/userguide/more_about_tasks.html和https://docs.gradle.org/current/javadoc/org/gradle/api/tasks/TaskInputs.html 。
旁注:當您使用-i
運行構建時,Gradle會告訴您最新檢查期間發生了什么。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.