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

相關文章
相關標籤/搜索