maven经常使用配置的变量

maven的变量 

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

1)内置属性 java

Xml代码 react

 

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



2)Pom/Project properties 
全部pom中的元素均可以用 project. 前缀进行引用,如下是部分经常使用的 less

Xml代码 jvm

 

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



3)本地用户设定 
全部用的的 settings.xml 中的设定均可以经过 settings. 前缀进行引用 maven

Xml代码 ide

 

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



4)环境变量 
系统的环境变量经过 env. 前缀引用 ui

Xml代码 this

 

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



5)java系统属性 
全部JVM中定义的java系统属性. 

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

Xml代码 code

 

  1. <project>   
  2.     ...   
  3.     <properties>   
  4.         <my.filter.value>hello</my.filter.value>   
  5.     </properties>   
  6.     ...   
  7. </project>  


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

7)上级工程的变量 

Xml代码 

 

  1. 上级工程的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

相关文章
相关标签/搜索