Я пытаюсь использовать функцию ant.uptodate в функции gradle, чтобы проверить, изменились ли некоторые файлы.
task generateXMLBeans {
ant.uptodate(property: "xsdFileChanges", targetfile: "lib/xmlBeans.jar") {
srcfiles(dir: 'protocol') {
include(name: '*.xsd')
}
}
if(ant.properties.xsdFileChanges == "false") {
ant.taskdef(name: 'xmlbean', classname: 'org.apache.xmlbeans.impl.tool.XMLBean',
classpath: configurations.xmlbeans.asPath)
ant.xmlbean(
javasource: "1.5",
failonerror: "true",
fork: "yes",
memoryMaximumSize: "512M",
memoryInitialSize: "64M",
destfile: "lib/xmlBeans.jar",
classpath: configurations.xmlbeans.asPath){
fileset(dir: 'protocol') {
include(name: '*.xsdconfig')
include(name: 'hmiprotocol.xsd')
}
}
}
}
Но переменная ant.properties.xsdFileChanges
равна null
.
Я пытался поместить функцию ant.uptodate
в отдельную функцию с тем же результатом.
Когда я вызываю задачу с функцией --debug
, я вижу, что муравей Функция .uptodate обычно работает.
14:40:50.947 [DEBUG] [org.gradle.api.internal.project.ant.AntLoggingAdapter] [ant:uptodate] hmiprotocol_systemlog.xsd omitted as D:\workspace_201912\ProjectX\lib\xmlBeans.jar is up to date.
14:40:50.948 [DEBUG] [org.gradle.api.internal.project.ant.AntLoggingAdapter] [ant:uptodate] hmiprotocol_testdetails.xsd omitted as D:\workspace_201912\ProjectX\lib\xmlBeans.jar is up to date.
Кто-нибудь знает, как правильно получить доступ к свойству ant?