当我们配置java或者python环境时,通常需要我们配置环境变量。那么环境变量是什么呢?

环境变量介绍
- 环境变量(Environment Variables)是一种在操作系统层面设置的键值对,它们用来存储系统或用户运行程序时所需的信息。
- 在 Windows 系统里,常见环境变量有:
- PATH:告诉系统到哪些目录去寻找可执行文件。
- TEMP和TMP:临时文件的存放目录。
- USERNAME:当前登录的用户名。
- SystemRoot:系统目录,一般是
C:\Windows。
- 在 Linux / macOS 系统里,常见环境变量有:
-
- PATH:同样表示搜索可执行程序的路径。
- HOME:当前用户的主目录。
- USER:当前用户名。
- SHELL:用户默认的命令行解释器(比如
/bin/bash)。
环境变量作用:
- 程序运行时要知道依赖库或工具的位置,就靠 PATH
- 系统和应用软件能通过读取这些变量来共享配置信息。
- 用户可以根据需要自定义,比如添加 Python、Java、Go 的安装路径。
环境变量也分为用户变量和系统变量
- 用户变量:只对当前用户生效。
- 系统变量:对整台电脑所有用户生效。
- 当用户变量和系统变量 里都有同名变量时,用户变量的值会覆盖系统变量的值, 优先使用用户那一份
接下来,我们以java环境变量举例,更好的理解环境变量是什么:
java环境变量配置
以配置Java环境为例:
- 我们首先需要下载JDK,并保存在我们电脑的目录上。假设为D:\java\jdk-8u391
- 然后再配置电脑的环境变量。在其中的系统变量中添加两个键值对:首先是创建一个JAVA_HOME键值对,然后在PATH中新建一个值引用JAVA_HOME


其中,JAVA_HOME是指向JDK的安装根目录,PATH中引用了JAVA_HOME,并在路径后添加上了bin目录。PATH主要用于编译和运行java程序,而JAVA_HOME主要给一些应用或者插件如MAVEN、IDEA、Tomcat等使用。
因为 Windows(或 Linux/macOS)系统默认不知道 JDK 安装在哪里。如果不告诉系统:你在命令行里输入 java、javac 时,它会报错:
'java' 不是内部或外部命令,也不是可运行的程序或批处理文件。
开发工具(IDEA、Eclipse、Maven、Gradle、Tomcat 等)也找不到 JDK。
所以,配置环境变量就是让系统和工具能找到 JDK 的位置。
当运行Java,系统实际上做的事情:
- 先看是不是 CMD/PowerShell 内置的命令(比如
cd、dir)。 - 如果不是,则会在当前目录中找,如果当前目录有
java.exe→ 优先执行它。 - 如果没找到,系统就会从 PATH 的目录列表里找。系统会从PATH的第一条目录开始遍历,直到找到java.exe。如果遍历到最后一条目录还是没找到,则会报错。
环境变量作用
假设JDK安装在:
C:\Program Files\Java\jdk-17
没有配置环境变量时:
- 若要编译java程序:
"C:\Program Files\Java\jdk-17\bin\javac.exe" HelloWorld.java
- 若要运行Java程序:
"C:\Program Files\Java\jdk-17\bin\java.exe" HelloWorld
配置了环境变量:
JAVA_HOME = C:\Program Files\Java\jdk-17
PATH = %JAVA_HOME%\bin
则编译和运行Java程序时可以省略的写为:
# 编译
javac HelloWorld.java
# 运行
java HelloWorld
5145

被折叠的 条评论
为什么被折叠?



