`

maven常用配置的变量

    博客分类:
  • JAVA
阅读更多
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
分享到:
评论
6 楼 erpaoshouling 2016-07-12  
赞,很有用
5 楼 zxjlwt 2015-09-09  
学习了。


http://surenpi.com
4 楼 ron.luo 2015-02-10  
eighteencold 写道

3楼想说明什么呢?
2 楼 eighteencold 2014-10-20  
http://docs.codehaus.org/display/MAVENUSER/MavenPropertiesGuide
1 楼 barryzhong 2013-12-16  
很有用,多谢

相关推荐

Global site tag (gtag.js) - Google Analytics