Відповіді:
Ти це маєш на увазі?
Я також перемістив його вміст до репортажу GitHub:
https://github.com/cko/predefined_maven_properties/blob/master/README.md
[WARNING] The expression ${artifactId} is deprecated. Please use ${project.artifactId} instead.
але включає в себе більшість;)
Погляньте на розділ 9.2 .: Властивості Мавена безкоштовної онлайн-книги Maven: Повна довідка .
Дивлячись на "ефективний POM", ймовірно, теж допоможе. Наприклад, якщо ви хочете знати, для чого шлях${project.build.sourceDirectory}
ви знайдете пов'язаний XML в ефективному POM, наприклад:
<project>
<build>
<sourceDirectory>/my/path</sourceDirectory>
Також корисно - ви можете зробити оцінку властивостей у режимі реального часу за допомогою командного рядка, mvn help:evaluate
перебуваючи в тому ж режимі, що і POM.
Я думаю, що найкраще місце для пошуку - Super POM .
Як приклад, під час написання зв'язаної посилання показано деякі властивості між рядками 32 - 48.
Інтерпретація цього полягає в тому, щоб слідувати XPath як .
розмежоване властивість.
Так, наприклад:
${project.build.testOutputDirectory}
== ${project.build.directory}/test-classes
І:
${project.build.directory}
== ${project.basedir}/target
Комбінуючи їх, ми знаходимо:
${project.build.testOutputDirectory}
== ${project.basedir}/target/test-classes
(Для посилання на каталоги ресурсів див. Це питання про 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>
Мені набридло бачити цю сторінку з її усталеними посиланнями на неіснуючі сторінки Codehaus, тому я попросив у списку розсилки користувачів Maven і отримав ще кілька актуальних відповідей.
Я б сказав, що найкраща (і найавторитетніша) відповідь, що міститься в моєму посиланні вище, - це відповідь, зроблена Герве БОТЕМІ:
ось основна посилання: http://maven.apache.org/ref/3-LATEST/maven-model-builder/
він не пояснює все, що можна знайти в POM або в налаштуваннях, оскільки є так багато інформації, але вона вказує на POM та дескриптори налаштувань і пояснює все, що не є POM або налаштуваннями
Це посилання показує, як перелічити всі активні властивості: http://skillshared.blogspot.co.uk/2012/11/how-to-list-down-all-maven-available.html
Підсумовуючи, додайте до POM таке визначення плагіна та запустіть 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>
${...}
)