maven屬性
內置屬性(maven預定義,用戶可以直接使用的)
主要有兩個常用內置屬性——
${basedir}表示項目根目錄,即包含pom.xml文件的目錄;
${version}表示項目版本。
${project.basedir}同${basedir};
POM屬性(使用pom屬性可以引用到pom.xml文件對應的元素的值)
${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}.
自定義屬性(在pom.xml文件的<properties>標簽下定義的maven屬性)
<project> <properties> <my.pro>proname</my.pro> </properties> </project>
在其他地方就可以使用該自定義的屬性了:
<dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>${proname}</version> </dependency>
setting.xml文件屬性(與pom屬性同理,用戶可以用以settings.開頭的屬性引用setting.xml文件的XML元素值)
${settings.localRepository}表示本地倉庫的地址
java系統屬性(所有的java系統屬性都可以用env,開頭的maven屬性引用)
使用mvn help:system命令可查看所有環境變量;
${env.JAVA_HOME}表示JAVA_HOME環境變量的值;