wwe tutorial maven

wwe - maven tutorial



¿Dónde está la lista de propiedades Maven predefinidas? (6)

¿Te refieres a este?

https://web.archive.org/web/20150520200505/https://docs.codehaus.org/display/MAVENUSER/MavenPropertiesGuide

También moví su contenido a un repositorio de GitHub:

https://github.com/cko/predefined_maven_properties/blob/master/README.md

Sé que hay una lista de todas las propiedades Maven predefinidas (ya conoces project.build.sourceEncoding , o project.build.sourceDirectory ). Una vez vi la lista, pero no puedo encontrarla de nuevo.


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

Como ejemplo, al momento de escribir, la referencia vinculada muestra algunas de las propiedades entre las líneas 32 - 48.

La interpretación de esto es seguir el XPath como a . propiedad delimitada.

Así por ejemplo:

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

Y:

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

Por lo tanto, combinándolos, encontramos:

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

(Para hacer referencia al (a los) directorio (s) de recursos, vea esta pregunta de )

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



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, agregue la siguiente definición de complemento a su POM, luego ejecute 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>


Me cansé de ver esta página con sus antiguas referencias obsoletas a las difuntas páginas de Codehaus, así que pregunté en la lista de correo de los usuarios de Maven y obtuve algunas respuestas más actualizadas.

Diría que la mejor (y más fidedigna) respuesta contenida en mi enlace de arriba es la que ha aportado Hervé BOUTEMY:

aquí está la referencia principal: http://maven.apache.org/ref/3-LATEST/maven-model-builder/

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


Ver el "POM efectivo" probablemente también sea útil. Por ejemplo, si desea saber cuál es la ruta para ${project.build.sourceDirectory}

encontrará el XML relacionado en el POM efectivo, como por ejemplo: <project> <build> <sourceDirectory>/my/path</sourceDirectory>

También es útil: puede realizar una evaluación en tiempo real de las propiedades a través de la ejecución de la línea de mvn help:evaluate de mvn help:evaluate en el mismo directorio que el POM.