Maven内置变量说明
Maven內置變量說明:
- ${basedir} 項目根目錄(即pom.xml文件所在目錄)
- ${project.build.directory} 構建目錄,缺省為target目錄
- ${project.build.outputDirectory} 構建過程輸出目錄,缺省為target/classes
- ${project.build.finalName} 產出物名稱,缺省為${project.artifactId}-${project.version}
- ${project.packaging} 打包類型,缺省為jar
- ${project.xxx} 當前pom文件的任意節點的內容
- ${env.xxx} 獲取系統環境變量。例如,"env.PATH"指代了$path環境變量(在Windows上是%PATH%)。
- ${settings.xxx} 指代了settings.xml中對應元素的值。例如:<settings><offline>false</offline></settings>通過?${settings.offline}獲得offline的值。
- Java System Properties: 所有可通過java.lang.System.getProperties()訪問的屬性都能在POM中使用,例如?${JAVA_HOME}。
?
Maven總共有6類屬性,內置屬性、POM屬性、自定義屬性、Settings屬性、java系統屬性和環境變量屬性;
1.內置屬性
兩個常用內置屬性 ${basedir} 或者 ${project.basedir} 表示項目跟目錄,即包含pom.xml文件的目錄;${version} 表示項目版本
2.POM屬性
用戶可以使用該類屬性引用POM文件中對應元素的值。如${project.artifactId}就對應了<project> <artifactId>元素的值,常用的POM屬性包括:
${project.build.sourceDirectory}:項目的主源碼目錄,默認為src/main/java/
${project.build.testSourceDirectory}:項目的測試源碼目錄,默認為src/test/java/
${project.build.directory} : 項目構建輸出目錄,默認為target/
${project.outputDirectory} : 項目主代碼編譯輸出目錄,默認為target/classes/
${project.testOutputDirectory}:項目測試主代碼輸出目錄,默認為target/testclasses/
${project.groupId}:項目的groupId
${project.artifactId}:項目的artifactId
${project.version}:項目的version,與${version} 等價
${project.build.finalName}:項目打包輸出文件的名稱,默認為${project.artifactId}-${project.version}
3.自定義屬性
如下account-aggregator的pom.xml,那么繼承了此pom.xml的子模塊也可以用此自定義屬性
4.Settings屬性
與POM屬性同理,用戶使用以settings. 開頭的屬性引用settings.xml文件中的XML元素的值。?
5.Java系統屬性
所有java系統屬性都可以用Maven屬性引用,如${user.home}指向了用戶目錄。
6.環境變量屬性
所有環境變量屬性都可以使用以env. 開頭的Maven屬性引用,如${env.JAVA_HOME}指代了JAVA_HOME環境變量的的值。
轉載于:https://www.cnblogs.com/tonggc1668/p/9508482.html
總結
以上是生活随笔為你收集整理的Maven内置变量说明的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: PyQt5简介及demo
- 下一篇: 悲观锁实现