Tengo un proyecto maven y una tarea para ella. En una tarea de hormiga, quiero obtener la propiedad de la versión de pom.xml. ¿Cómo conseguirlo?Cómo obtener la versión del proyecto del pom de Mavens en Ant
En pom.xml: <version>2.03.010</version>
Tengo un proyecto maven y una tarea para ella. En una tarea de hormiga, quiero obtener la propiedad de la versión de pom.xml. ¿Cómo conseguirlo?Cómo obtener la versión del proyecto del pom de Mavens en Ant
En pom.xml: <version>2.03.010</version>
El Maven Ant tasks proporcionan algunos objetivos para POM processing
Para acceder a la versión de un POM, puede utilizar el siguiente:
<artifact:pom id="mypom" file="pom.xml" />
<echo>The version is ${mypom.version}</echo>
Actualización: Para utilizar las tareas. Necesitarás instalarlos. Install instructions
puede:
Con la opción 2. modificar su proyecto de la siguiente manera para hacer hormiga consciente de la maven-ANT-tareas esquema:
<project ... xmlns:artifact="antlib:org.apache.maven.artifact.ant">
...
</project>
Con la opción 3. Se especifica el typedef de la siguiente manera (suponiendo que el experto -ant-tareas frasco está en el directorio lib del proyecto):
<project ... xmlns:artifact="antlib:org.apache.maven.artifact.ant">
...
<path id="maven-ant-tasks.classpath" path="lib/maven-ant-tasks-2.0.10.jar" />
<typedef resource="org/apache/maven/artifact/ant/antlib.xml"
uri="antlib:org.apache.maven.artifact.ant"
classpathref="maven-ant-tasks.classpath" />
...
</project>
Si lo que quiere es sólo para leer los valores de pom.xml con lo que está incluido en la hormiga ya, usted puede utilizar la tarea XmlProperty:
<xmlproperty file="pom.xml" prefix="pom" />
<echo>The version is ${pom.project.version}</echo>
Por cierto, las tareas de Maven Ant ya no se mantienen.
Esto siempre funciona y es mucho más simple que la respuesta aceptada. –
Gran enfoque. – jsosnowski
Tengo un error. ¿Qué debo añadir? build.xml: 11: El prefijo "artefacto" para el elemento "artefacto: pom" no está vinculado. – Chuprin
Las tareas de la hormiga Maven no son parte de la instalación de Ant. Necesitas agregarlos. –
+1 para la respuesta muy detallada (y correcta) –