maven-属性
maven的属性主要分为两大类,第一类是自定义属性,另一类是可以直接使用的
自定义属性
- 在properties元素中进行定义
<properties>
<属性名>属性值</属性名>
</properties>
- 在使用的地方使用${}直接进行引用
${属性名}
maven运行的时候会将${}替换为属性实际的值
内置属性
- ${basedir}:标识项目跟目录,即包含pom.xml文件的目录
- ${version}:标识项目的版本号
POM属性
用户可以使用该属性引用pom.xml文件中对应元素的值
属性 | 作用 |
---|---|
${pom.build.sourceDirectory} | 项目的主源码目录,默认为src/main/java |
${project.build.testSourceDirectory} | 项目的测试源码目录,默认为src/test/java |
${project.build.derectory} | 项目构件输出目录,默认为target/ |
${project.build.outputDirectory} | 项目代码编译输出目录,默认为target/classes |
${project.build.testOutputDirectory} | 项目测试代码编译输出目录,默认为target/test-classes |
${project.groupId} | 项目的groupId |
${project.artifactId} | 项目的artifactId |
${project.version} | 项目的version,于$等价 |
${project.build.finalName} | 项目打包输出文件的名称,默认为$-$ |
settings属性
这种属性以settings.开头来引用settings.xml
中的内容
- ${settings.localRepository}:指向用户本地仓库的地址
java系统属性
所有java系统属性都可以使用maven属性来进行引用,例如${user.home}指向了当前用户目录
java系统属性可以通过mvn help:system命令看到
环境变量属性
所有的环境变量都可以使用env.开头的方式来进行引用,例如${env.JAVA_HOME}可以获取环境变量JAVA_HOME的值
用户可以使用mvn help:system命令查看所有环境变量的值