Czytanie informacji z istniejącego pliku pom.xml za pomocą Gradle?

W AntZadania Maven Ant może być używany do odczytu takich właściwości maven:

<artifact:pom id="mypom" file="pom.xml" />
<echo>The version is ${mypom.version}</echo>

Czy w Gradle istnieje „natywna” obsługa dostępu do elementów pom z istniejącego fizycznego pliku pom.xml lub czy muszę przejść przez powyższe podejście Ant w moim pliku .gradle, aby to działało?

Ta strona:

http://gradle.org/docs/current/userguide/maven_plugin.html

ma informacje na temat generowania plików pom, ale to nie to, czego szukam. Próbowałem utworzyć plik .gradle, który robi to samo:

    repositories {
      mavenCentral()
    }

    configurations {
        mavenAntTasks
    }

    dependencies {
        mavenAntTasks 'org.apache.maven:maven-ant-tasks:2.1.1'
    }

    task hello << {
      ant.taskdef(resource: 'org/apache/maven/artifact/ant/antlib.xml',
                  uri: 'antlib:org.apache.maven.artifact.ant',
                  classpath: configurations.mavenAntTasks.asPath)

     // what is the gradle syntax for this:
     // <artifact:pom id="mypom" file="maven-project/pom.xml" />
     // its not a property or a task...
     def artifact = groovy.xml.NamespaceBuilder.newInstance(ant,'antlib:org.apache.maven.artifact.ant')
     artifact.pom(id:'mypom', file: 'pom.xml')
     def text = properties['mypom.version']
     println "From pom file: " + text 

    }

gdzie mam prosty plik pom.xml znajdujący się obok pliku build.gradle. Ale nie mogę znaleźć żadnych informacji w dokumentach gradle na odpowiednich wywołaniach mrówek dla tego zadania. Spojrzałem na:

http://www.gradle.org/docs/current/userguide/ant.html

jak odczytać właściwości mrówek i odnośniki, ale to:

<artifact:pom id="mypom" file="maven-project/pom.xml" />

nie wydaje się ani właściwością, ani odniesieniem. Natknąłem się na tę stronę:

http://snipplr.com/view/4082/

gdzieNamespaceBuilder jest używany:

 def mvn = groovy.xml.NamespaceBuilder.newInstance(ant, 'antlib:org.apache.maven.artifact.ant')

ale używając tego podejścia otrzymuję:

The AbstractTask.getDynamicObjectHelper() method has been deprecated and will be removed in the next version of Gradle. Please use the getAsDynamicObject() method instead.
From pom file: null

po odrobinie gogli znalazłem:

http://issues.gradle.org/browse/GRADLE-2385

co wydaje się powiązane, ale wartość nieruchomości jest nadal null.

questionAnswers(4)

yourAnswerToTheQuestion