我知道有一个所有预定义Maven属性的列表(你知道project.build.sourceEncoding,或者project.build.sourceDirectory).我曾经看过这个清单,但我再也找不到了.
fre*_*asy 123
你是说这个吗?
我还将其内容移至GitHub仓库:
https://github.com/cko/predefined_maven_properties/blob/master/README.md
Mic*_*ord 23
看看"有效的POM"也可能有所帮助.例如,如果您想知道路径是什么${project.build.sourceDirectory}
你会在有效的POM中找到相关的XML,例如:
<project>
<build>
<sourceDirectory>/my/path</sourceDirectory>
也很有帮助 - 您可以通过命令行执行实时的属性评估,mvn help:evaluate同时在与POM相同的目录中执行.
Ste*_*art 11
我认为最好看的地方是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>
Run Code Online (Sandbox Code Playgroud)
我已经厌倦了看到这个页面的现在过时引用已经解散的Codehaus页面,所以我在Maven用户邮件列表上询问并获得了一些更新的答案.
我会说上面链接中包含的最好(也是最权威的)答案是由HervéBOUTEMY提供的答案:
这是核心参考: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>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
110309 次 |
| 最近记录: |