Maven工具学习使用(七)——Maven属性

内置属性

主要有两个常用的属性${basedir}表示项目的根目录,即包含pom.xml文件的目录;$[version]表示项目版本。

POM属性

使用该类属性引用POM文件中对应元素的值。例如${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/test-classes

${project.groupId} 项目的groupId

${project.artifactId} 项目的artifactId

${project.version} 项目的版本号,与${version}等价

${project.build.finalName} 项目打包输出文件的名称,默认为${project.artifactId}-${project.version}

自定义属性

在POM文件中元素下定义的属性。例如

<project>
...
    <properties>
        <myprop>hello</myprop>
    </properties>
...
</proeject>

在POM文件的其他地方使用${myprop}来引用myprop属性的值。

Settings属性

与POM属性相同,可以用settings开头的属性引用settings.xml文件中XML元素的值,例如${settings.localRepository}

Java系统属性

所有的Java系统属性都可以使用Maven属性引用,例如${user.home}指向了用户目录。mvn help:system 命令可以查看所有的Java系统属性

Windows中可以通过mvn help:system findStr /C:"user.home" 改命令会查出所有包含user,home的行

mvn help:system find "user.home" find与findStr类似,只是不需要/C:

环境变量属性

所有环境变量都可以使用env.开头的Maven属性引用。例如${env.JAVA_HOME}表示JAVA_HOME环境变量的值。

mvn help:system 命令可以查看所有的环境变量。该命令执行结果如下所示,其中包括系统属性和环境变量。

[INFO] Scanning for projects...
[INFO]
[INFO] ------------------< org.apache.maven:standalone-pom >-------------------
[INFO] Building Maven Stub Project (No POM) 1
[INFO] --------------------------------[ pom ]---------------------------------
[INFO]
[INFO] --- maven-help-plugin:3.4.0:system (default-cli) @ standalone-pom ---
[INFO]
===============================================================================
========================= Platform Properties Details =========================
===============================================================================

===============================================================================
System Properties
===============================================================================

java.runtime.name=Java(TM) SE Runtime Environment
sun.boot.library.path=D:\develop\java\jdk1.8.0_144\jre\bin
java.vm.version=25.144-b01
java.vm.vendor=Oracle Corporation
maven.multiModuleProjectDirectory=C:\Users\chsun
java.vendor.url=http://java.oracle.com/
path.separator=;
guice.disable.misplaced.annotation.check=true
java.vm.name=Java HotSpot(TM) 64-Bit Server VM
file.encoding.pkg=sun.io
user.script=
user.country=CN
sun.java.launcher=SUN_STANDARD
sun.os.patch.level=
java.vm.specification.name=Java Virtual Machine Specification
user.dir=C:\Users\chsun
java.runtime.version=1.8.0_144-b01
java.awt.graphicsenv=sun.awt.Win32GraphicsEnvironment
java.endorsed.dirs=D:\develop\java\jdk1.8.0_144\jre\lib\endorsed
os.arch=amd64
java.io.tmpdir=C:\Users\chsun\AppData\Local\Temp\
line.separator=

java.vm.specification.vendor=Oracle Corporation
user.variant=
os.name=Windows 10
classworlds.conf=D:\develop\apache-maven-3.6.3\bin\..\bin\m2.conf
sun.jnu.encoding=GBK
java.library.path=D:\develop\java\jdk1.8.0_144\bin;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;D:\Programs Files\VMware\VMware Workstation\bin\;D:\develop\Python\Python313\Scripts\;D:\develop\Python\Python313\;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files\NVIDIA Corporation\NVIDIA NvDLISR;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\System32\OpenSSH\;D:\develop\java\jdk1.8.0_144\bin;D:\develop\java\jdk1.8.0_144\jre\bin;D:\develop\apache-maven-3.6.3\bin;D:\develop\apache-tomcat-10.1.20\bin;C:\Program Files\Git\cmd;D:\develop\nodejs\;C:\Program Files\dotnet\;C:\Users\chsun\AppData\Local\Microsoft\WindowsApps;C:\Users\chsun\AppData\Local\GitHubDesktop\bin;D:\develop\Microsoft VS Code\bin;C:\Users\chsun\AppData\Roaming\npm;;.
maven.conf=D:\develop\apache-maven-3.6.3\bin\../conf
java.specification.name=Java Platform API Specification
java.class.version=52.0
sun.management.compiler=HotSpot 64-Bit Tiered Compilers
os.version=10.0
library.jansi.path=D:\develop\apache-maven-3.6.3\bin\..\lib\jansi-native
user.home=C:\Users\chsun
user.timezone=Asia/Shanghai
java.awt.printerjob=sun.awt.windows.WPrinterJob
java.specification.version=1.8
file.encoding=GBK
user.name=chsun
java.class.path=D:\develop\apache-maven-3.6.3\bin\..\boot\plexus-classworlds-2.6.0.jar
java.vm.specification.version=1.8
sun.arch.data.model=64
java.home=D:\develop\java\jdk1.8.0_144\jre
sun.java.command=org.codehaus.plexus.classworlds.launcher.Launcher help:system
java.specification.vendor=Oracle Corporation
user.language=zh
awt.toolkit=sun.awt.windows.WToolkit
java.vm.info=mixed mode
java.version=1.8.0_144
java.ext.dirs=D:\develop\java\jdk1.8.0_144\jre\lib\ext;C:\WINDOWS\Sun\Java\lib\ext
sun.boot.class.path=D:\develop\java\jdk1.8.0_144\jre\lib\resources.jar;D:\develop\java\jdk1.8.0_144\jre\lib\rt.jar;D:\develop\java\jdk1.8.0_144\jre\lib\sunrsasign.jar;D:\develop\java\jdk1.8.0_144\jre\lib\jsse.jar;D:\develop\java\jdk1.8.0_144\jre\lib\jce.jar;D:\develop\java\jdk1.8.0_144\jre\lib\charsets.jar;D:\develop\java\jdk1.8.0_144\jre\lib\jfr.jar;D:\develop\java\jdk1.8.0_144\jre\classes
sun.stderr.encoding=ms936
java.vendor=Oracle Corporation
maven.home=D:\develop\apache-maven-3.6.3\bin\..
file.separator=\
java.vendor.url.bug=http://bugreport.sun.com/bugreport/
sun.cpu.endian=little
sun.io.unicode.encoding=UnicodeLittle
sun.stdout.encoding=ms936
sun.desktop=windows
sun.cpu.isalist=amd64

===============================================================================
Environment Variables
===============================================================================

CLASSWORLDS_JAR="D:\develop\apache-maven-3.6.3\bin\..\boot\plexus-classworlds-2.6.0.jar"
PSMODULEPATH=C:\Program Files\WindowsPowerShell\Modules;C:\WINDOWS\system32\WindowsPowerShell\v1.0\Modules
COMMONPROGRAMW6432=C:\Program Files\Common Files
PROGRAMW6432=C:\Program Files
PROCESSOR_ARCHITECTURE=AMD64
CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher
PATH=D:\Programs Files\VMware\VMware Workstation\bin\;D:\develop\Python\Python313\Scripts\;D:\develop\Python\Python313\;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files\NVIDIA Corporation\NVIDIA NvDLISR;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\WINDOWS\System32\OpenSSH\;D:\develop\java\jdk1.8.0_144\bin;D:\develop\java\jdk1.8.0_144\jre\bin;D:\develop\apache-maven-3.6.3\bin;D:\develop\apache-tomcat-10.1.20\bin;C:\Program Files\Git\cmd;D:\develop\nodejs\;C:\Program Files\dotnet\;C:\Users\chsun\AppData\Local\Microsoft\WindowsApps;C:\Users\chsun\AppData\Local\GitHubDesktop\bin;D:\develop\Microsoft VS Code\bin;C:\Users\chsun\AppData\Roaming\npm;
PROGRAMDATA=C:\ProgramData
WDIR=C:\
SYSTEMROOT=C:\WINDOWS
JAVACMD=D:\develop\java\jdk1.8.0_144\bin\java.exe
TMP=C:\Users\chsun\AppData\Local\Temp
PROGRAMFILES(X86)=C:\Program Files (x86)
EXEC_DIR=C:\Users\chsun
COMPUTERNAME=LAPTOP-OVFH7VF5
OS=Windows_NT
PROMPT=$P$G
MAVEN_HOME=D:\develop\apache-maven-3.6.3\bin\..
WINDIR=C:\WINDOWS
SYSTEMDRIVE=C:
=::=::\
ZES_ENABLE_SYSMAN=1
COMSPEC=C:\WINDOWS\system32\cmd.exe
DRIVERDATA=C:\Windows\System32\Drivers\DriverData
=C:=C:\Users\chsun
HOMEDRIVE=C:
LOGONSERVER=\\LAPTOP-OVFH7VF5
PROCESSOR_IDENTIFIER=Intel64 Family 6 Model 154 Stepping 3, GenuineIntel
COMMONPROGRAMFILES=C:\Program Files\Common Files
PROGRAMFILES=C:\Program Files
EFC_17960=1
COMMONPROGRAMFILES(X86)=C:\Program Files (x86)\Common Files
NUMBER_OF_PROCESSORS=20
TEMP=C:\Users\chsun\AppData\Local\Temp
USERDOMAIN=LAPTOP-OVFH7VF5
CATALINA_HOME=D:\develop\apache-tomcat-10.1.20
PROCESSOR_LEVEL=6
ERROR_CODE=0
SESSIONNAME=Console
USERNAME=chsun
PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC;.PY;.PYW
FPS_BROWSER_USER_PROFILE_STRING=Default
=EXITCODE=00000002
JVMCONFIG=\.mvn\jvm.config
FPS_BROWSER_APP_PROFILE_STRING=Internet Explorer
USERDOMAIN_ROAMINGPROFILE=LAPTOP-OVFH7VF5
PUBLIC=C:\Users\Public
ONEDRIVE=C:\Users\chsun\OneDrive
PROCESSOR_REVISION=9a03
USERPROFILE=C:\Users\chsun
APPDATA=C:\Users\chsun\AppData\Roaming
HOMEPATH=\Users\chsun
LOCALAPPDATA=C:\Users\chsun\AppData\Local
JAVA_HOME=D:\develop\java\jdk1.8.0_144
ALLUSERSPROFILE=C:\ProgramData
MAVEN_CMD_LINE_ARGS=help:system
MAVEN_PROJECTBASEDIR=C:\Users\chsun

[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  0.797 s
[INFO] Finished at: 2025-04-04T23:05:17+08:00
[INFO] ------------------------------------------------------------------------

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

螺旋小蜗

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值