一、pom文件,maven内置变量
- ${basedir} 项目根目录
- ${project.build.directory} 构建目录,缺省为target
- ${project.build.outputDirectory} 构建过程输出目录,缺省为target/classes
- ${project.build.finalName} 产出物名称,缺省为${project.artifactId}-${project.version}
- ${project.packaging} 打包类型,缺省为jar
- ${project.xxx} 当前pom文件的任意节点的内容
修改方法,在pom文件中,build下增加对应的子节点即可。如修改构建目录,可以在<build></build>中增加<directory></directory>。进一步讲maven中可以通过${}引用pom.xml文件中对应节点的值。
二、自定义属性
作为约定,maven自定义属性推荐放在<properties>标签下,更方便其它地方引用。
<project>
<properties>
<my.pro>abc</my.pro>
</properties>
</project>
在其他地方使用${my.pro}使用该属性值。
三、settings.xml文件属性
(与pom属性同理,用户使用以settings.开头的属性引用settings.xml文件中的XML元素值)
${settings.localRepository}表示本地仓库的地址;
四、Java系统属性(所有的Java系统属性都可以使用Maven属性引用)
使用mvn help:system命令可查看所有的Java系统属性;
System.getProperties()可得到所有的Java属性;
${user.home}表示用户目录;
五、环境变量属性(所有的环境变量都可以用以env.开头的Maven属性引用)
使用mvn help:system命令可查看所有环境变量;
${env.JAVA_HOME}表示JAVA_HOME环境变量的值;