2010-12-10 19 views

Respuesta

89
+0

Sí. Gracias. – Martin

+6

Codehaus ahora está muerto. ¿Alguien tiene un nuevo enlace? – digitaljoel

+14

El Archivo de Internet todavía tiene el enlace de CodeHaus: https://web.archive.org/web/20150520200505/https://docs.codehaus.org/display/MAVENUSER/MavenPropertiesGuide –

19

En cuanto a la "POM efectiva" probablemente ayudará también. Por ejemplo, si usted quiere saber lo que el camino es para ${project.build.sourceDirectory}

que puedes encontrar el archivo XML relacionado en el POM eficaces, tales como: <project> <build> <sourceDirectory>/my/path</sourceDirectory>

También es útil - que puede hacer un verdadero evaluación de tiempo de propiedades a través de la ejecución de línea de comando de mvn help:evaluate mientras se encuentra en el mismo directorio que el POM.

+0

muy útil. buen trabajo – Tiina

6

Creo que el mejor lugar para buscar es el Super POM.

Como un ejemplo, en el momento de la escritura, la referencia vinculada muestra algunas de las propiedades entre las líneas 32 - 48.

La interpretación de esto es seguir la ruta XPath como . propiedad delimitado.

Así, por ejemplo:

${project.build.testOutputDirectory} == ${project.build.directory}/test-classes

Y:

${project.build.directory} == ${project.basedir}/target

Por lo tanto la combinación de ellos, encontramos:

${project.build.testOutputDirectory} == ${project.basedir}/target/test-classes

(hacer referencia al directorio (s) de recursos, consulte this stackoverflow question)


<project> 
    <modelVersion>4.0.0</modelVersion> 
    . 
    . 
    . 
    <build> 
     <directory>${project.basedir}/target</directory> 
     <outputDirectory>${project.build.directory}/classes</outputDirectory> 
     <finalName>${project.artifactId}-${project.version}</finalName> 
     <testOutputDirectory>${project.build.directory}/test-classes</testOutputDirectory> 
     <sourceDirectory>${project.basedir}/src/main/java</sourceDirectory> 
     <scriptSourceDirectory>src/main/scripts</scriptSourceDirectory> 
     <testSourceDirectory>${project.basedir}/src/test/java</testSourceDirectory> 
     <resources> 
      <resource> 
       <directory>${project.basedir}/src/main/resources</directory> 
      </resource> 
     </resources> 
     <testResources> 
      <testResource> 
       <directory>${project.basedir}/src/test/resources</directory> 
      </testResource> 
     </testResources> 
     . 
     . 
     . 
    </build> 
    . 
    . 
    . 
</project> 
4

Me cansé de ver esta página con sus by-ahora referencias obsoletas a páginas Codehaus difuntos así que preguntó sobre la Maven Users mailing list y obtuve algunas respuestas más actualizadas.

Yo diría que la mejor (y más autorizada) la respuesta contenida en mi enlace anterior es el aportado por Hervé Boutemy:

aquí es la referencia central: http://maven.apache.org/ref/3-LATEST/maven-model-builder/

no lo hace explique todo lo que se puede encontrar en POM o en la configuración, , ya que hay mucha información disponible, pero apunta a descriptores de configuraciones POM y y explica todo lo que no es POM o configuración

+0

Tenga en cuenta que [las respuestas solo de enlace] (http://meta.stackoverflow.com/tags/link-only-answers/info) no se recomiendan, por lo que las respuestas deberían ser el punto final de una búsqueda de una solución (frente a otra escala más de referencias, que tienden a quedar obsoletas en el tiempo). Considere agregar una sinopsis independiente aquí, manteniendo el enlace como referencia – kleopatra

+3

La misma pregunta requiere un enlace, por lo que creo que su preocupación está fuera de lugar. Esta pregunta no pregunta "¿Cómo hago X?" Sino "¿Dónde puedo encontrar X?". –

+1

Vaya, tiene razón, es la pregunta que no encaja en este sitio :-) Gracias por el aviso - votaron a cerrar – kleopatra

1

Este enlace muestra cómo enumerar todas las propiedades activas: http://skillshared.blogspot.co.uk/2012/11/how-to-list-down-all-maven-available.html

En resumen, añadir la siguiente definición plugin para el POM, a continuación, ejecutar mvn install:

<plugin> 
    <artifactId>maven-antrun-plugin</artifactId> 
    <version>1.7</version> 
    <executions> 
     <execution> 
      <phase>install</phase> 
      <configuration> 
       <target> 
        <echoproperties /> 
       </target> 
      </configuration> 
      <goals> 
       <goal>run</goal> 
      </goals> 
     </execution> 
    </executions> 
</plugin> 
Cuestiones relacionadas