初学 Java 的同学总会觉得环境变量设置繁琐,加上不懂环境变量作用,找不到环境变量设置入口,不明白 ;
和 .;
的意义,每次设置都一脸懵逼。其实利用 PowerShell
这一切都不是问题。
环境变量的简要解释
顾名思义,环境变量首先是一个变量,其次它处于系统环境中,不需要用户定义和初始化,可以直接引用。那么设置环境变量有什么作用那?以 Java IDE 为例,软件运行时会获取系统环境变量 JAVA_HOME
的值,它指向 JVM
可执行文件所在目录,如此,IDE 便可找到 JVM 并进行调用,进而编译和执行 Java 程序。而设置 Path
时之所以加 ;
号,是为了和之前的设置分隔开,不会和前一变量一起被识别为同一变量。 相应地,CLASSPATH
中的 .;
就表示项目当前路径,即先在项目目录寻找,随后寻找后面两个目录,这些目录用来寻找 Java 代码中用到的依赖类。
优雅地设置环境变量
以管理员身份打开 PowerShell 执行以下代码,复制 JDK 根目录粘贴,回车结束。
$JAVA_HOME = Read-Host "请粘贴 JDK 根目录,如 C:\Program Files (x86)\Java\jdk1.8.0_91"
$JAVA_CLASSPATH = ".;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;"
$JAVA_PATH = ";%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;"
$CURRENT_PATH = [Environment]::GetEnvironmentvariable("Path", "Machine")
[Environment]::SetEnvironmentvariable("JAVA_HOME", "$JAVA_HOME", "Machine")
[Environment]::SetEnvironmentvariable("CLASSPATH", "$JAVA_CLASSPATH", "Machine")
[Environment]::SetEnvironmentvariable("Path", "${CURRENT_PATH}${JAVA_PATH}", "Machine")
添加一个 Maven 环境变量设置方法。
$MAVEN_HOME = Read-Host "请粘贴 Maven 根目录,如 D:\Maven\apache-maven-3.6.1"
$MAVEN_PATH = ";%MAVEN_HOME%\bin;"
$CURRENT_PATH = [Environment]::GetEnvironmentvariable("Path", "Machine")
[Environment]::SetEnvironmentvariable("M2_HOME", "$MAVEN_HOME", "Machine")
[Environment]::SetEnvironmentvariable("MAVEN_HOME", "$MAVEN_HOME", "Machine")
[Environment]::SetEnvironmentvariable("Path", "${CURRENT_PATH}${MAVEN_PATH}", "Machine")
设置完毕后重新打开 Powershell 输入以下命令检测是否设置成功。
# JDK
java -version
javac -version
# Maven
mvn -version
如有问题请在下方留言,文章转载请注明出处,详细交流请加下方群组!请大佬不要屏蔽文中广告,因为它将帮我分担服务器开支,如果能帮忙点击我将万分感谢。