Respostas:
Você quer dizer este?
Também mudei seu conteúdo para um repositório do GitHub:
https://github.com/cko/predefined_maven_properties/blob/master/README.md
[WARNING] The expression ${artifactId} is deprecated. Please use ${project.artifactId} instead.mas inclui a maioria;)
Veja a seção 9.2 .: Maven Propriedades do livro online gratuito Maven: The Complete Reference .
Olhar para o "POM eficaz" provavelmente também ajudará. Por exemplo, se você quiser saber para que serve o caminho${project.build.sourceDirectory}
você encontraria o XML relacionado no POM efetivo, como:
<project>
<build>
<sourceDirectory>/my/path</sourceDirectory>
Também é útil - você pode fazer uma avaliação em tempo real das propriedades através da execução da linha de comando mvn help:evaluateenquanto estiver no mesmo diretório que o POM.
Eu acho que o melhor lugar para procurar é o Super POM .
Como exemplo, no momento da redação, a referência vinculada mostra algumas das propriedades entre as linhas 32 - 48.
A interpretação disso é seguir o XPath como uma .propriedade delimitada.
Então, por exemplo:
${project.build.testOutputDirectory} == ${project.build.directory}/test-classes
E:
${project.build.directory} == ${project.basedir}/target
Assim, combinando-os, encontramos:
${project.build.testOutputDirectory} == ${project.basedir}/target/test-classes
(Para referenciar os diretórios de recursos, consulte esta pergunta sobre o stackoverflow )
<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>
Eu me cansei de ver esta página com suas referências obsoletas às páginas extintas do Codehaus, então perguntei na lista de discussão Maven Users e obtive algumas respostas mais atualizadas.
Eu diria que a melhor (e mais autoritária) resposta contida no meu link acima é a contribuição de Hervé BOUTEMY:
aqui está a referência principal: http://maven.apache.org/ref/3-LATEST/maven-model-builder/
ele não explica tudo o que pode ser encontrado no POM ou nas configurações, pois há muitas informações disponíveis, mas aponta para POM e descritores de configurações e explica tudo o que não é POM ou configurações
Este link mostra como listar todas as propriedades ativas: http://skillshared.blogspot.co.uk/2012/11/how-to-list-down-all-maven-available.html
Em resumo, adicione a seguinte definição de plug-in ao seu POM e execute 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>
${...})