Maven pom.xml配置常用的变量

转载自:http://qiaolevip.iteye.com/blog/1816652

 

maven的变量

maven定义了很多变量属性,参考这里
http://docs.codehaus.org/display/MAVENUSER/MavenPropertiesGuide

1、内置属性

${basedir} represents the directory containing pom.xml
${version} equivalent to ${project.version} or ${pom.version}

 

2、Pom/Project properties

所有pom中的元素都可以用 project. 前缀进行引用,以下是部分常用的

${project.build.directory } results in the path to your "target" dir, this is the same as ${pom.project.build.directory }
${project.build. outputD irectory } results in the path to your "target/classes" dir
${project.name } refers to the name of the project.
${project.version } refers to the version of the project.
${project.build.finalName } refers to the final name of the file created when the built project is packaged


 

3、本地用户设定

所有用的的 settings.xml 中的设定都可以通过 settings. 前缀进行引用

${settings.localRepository } refers to the path of the user's local repository.
${maven.repo.local } also works for backward compatibility with maven1 ??


 

4、环境变量

系统的环境变量通过 env. 前缀引用

${env.M2_HOME } returns the Maven2 installation path.
${java.home } specifies the path to the current JRE_HOME environment use with relative paths to get for example: 
<jvm>${java.home}../bin/java.exe</jvm>


 

5、java系统属性

所有JVM中定义的java系统属性.

 

6、用户在pom中定义的自定义属性

<project> 
    ... 
    <properties> 
        <my.filter.value>hello</my.filter.value> 
    </properties> 
    ... 
</project>


则引用 ${my.filter.value } 就会得到值 hello

 

7、上级工程的变量

上级工程的pom中的变量用前缀 ${project.parent } 引用. 上级工程的版本也可以这样引用: ${parent.version }.maven的变量


 

8、引用属性Reflection Properties

The pattern ${someX.someY.someZ} can simply sometimes mean getSomeX().getSomeY().getSomeZ(). Thus, properties such as ${project.build.directory} is translated to getProject().getBuild().getDirectory().

 

汇总变量列表: 
*  project (from [1]) 
          o project.distributionManagementArtifactRepository 
          o project.artifact 
          o project.parent 
          o project.file 
          o project.artifacts 
          o project.parentArtifact 
          o project.pluginArtifacts 
          o project.remoteArtifactRepositories 
          o project.pluginArtifactRepositories 
          o project.attachedArtifact 
    * settings (from [2]) 
          o settings.offilne 
          o settings.interactive 
    * rootless (from [3]) 
          o localRepository 
          o reactorProjects 
    * java properties (from [4]) 
          o java.version 
          o java.vendor 
          o java.vendor.url 
          o java.home 
          o java.vm.specification.version 
          o java.vm.specification.vendor 
          o java.vm.specification.name 
          o java.vm.version 
          o java.vm.vendor 
          o java.vm.name 
          o java.specification.version 
          o java.specification.vendor 
          o java.specification.name 
          o java.class.version 
          o java.class.path 
          o java.library.path 
          o java.io.tmpdir 
          o java.compiler 
          o java.ext.dirs 
          o os.name 
          o os.arch 
          o os.version 
          o file.separator 
          o path.separator 
          o line.separator 
          o user.name 
          o user.home 
          o user.dir

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值