2009-09-29 31 views

Respuesta

12

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:

  1. Coloque el JAR en el directorio lib Hormiga, incluirlo en la variable de entorno CLASSPATH
  2. pasarlo a Ant utilizando el parámetro de línea de comandos -lib
  3. Uso una declaración typedef. Esto le permite almacenar la biblioteca Ant Tasks donde quiera y poner su ubicación en el archivo de compilación.

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> 
+0

Tengo un error. ¿Qué debo añadir? build.xml: 11: El prefijo "artefacto" para el elemento "artefacto: pom" no está vinculado. – Chuprin

+1

Las tareas de la hormiga Maven no son parte de la instalación de Ant. Necesitas agregarlos. –

+0

+1 para la respuesta muy detallada (y correcta) –

5

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.

+0

Esto siempre funciona y es mucho más simple que la respuesta aceptada. –

+0

Gran enfoque. – jsosnowski

Cuestiones relacionadas