1. 内置属性
${basedir}表示项目的根目录,既包含pom.xml的文件目录
${version} 表示项目版本
2. POM属性
用户使用以project.开头的属性引用pom.xml中对应元素的值
常用POM属性:默认值在超级pom.xml中定义,超级pom.xml位置:maven-model-builder-x.x.x.jar/org/apache/maven/model/
${project.build.sourceDirectory} 项目的主源码目录,默认为src/main/java
${project.build.testSourceDirectory} 项目的测试源码目录,默认为src/test/java
${project.build.directory} 项目构建输出目录,默认为target/
${project.build.outputDirectory} 项目主源码编译输出目录,默认为target/classes
${project.build.testOutputDirectory} 项目测试源码编译输出目录,默认为target/test-classes
${project.build.groupId} 项目的groupId
${project.build.artifactId} 项目的artifactId
${project.build.version} 项目的version
${project.build.finalName} 项目打包输出的文件名,默认为${project.artifactId}-${project.version}
3. 自定义属性
用户可以在pom.xml的<properties>元素下定义数据
<project>
...
<properties>
<my.prop>hello</my.prop>
</propertes>
...
</project>
4. Settings属性
用户使用以settings.开头的属性引用settings.xml文件中xml元素
${settings.localRepository} 用户本地仓库的地址
5. Java系统属性
所有Java系统属性都可以用Maven属性引用
${user.home}
mvn help:system
6. 环境变量属性
所有环境变量属性都可以使用以env.开头的Maven属性引用
${env.JAVA_HOME}
Maven属性