【Java基础】一看就懂的jdk环境变量配置

前言

先解释下几个专用术语
DOS:Disk Operating System,磁盘操作系统
JRE:Java Runtime Environment,Java运行环境
JDK:Java Development Kit,Java 语言的软件开发工具包
JVM:Java Virtual Machine, Java虚拟机

大家都知道java程序是运行在java虚拟机上的,所以JVM是必不可少的,JRE下就有JVM以及java开发所需的标准类库,而JDK又包含了JRE以及操作java文件相关命令(编译、打包等),所以大家开发的时候安装JDK就行了

正式开始

想必刚开始学习java的时候大家都是在DOS窗口中去跑java demo 的吧。

在这里插入图片描述
但是当大家看到这张图的时候是不是很恐慌,我明明装了jdk,为什么还是会出现这个提示,其实提示已经很明显了,不是内部或外部命令,何为内部命令?例如dir(显示当前目录下文件)、cd…(进入上一层目录)这些就是机器可以识别的内部命令,何为外部命令?javac就是我们安装的jdk下bin目录中的指令

比如我的jdk安装在D:\Program Files\Java\jdk1.8.0_201这里
在这里插入图片描述
javac命令就在bin目录中,那么我进入到当前目录肯定是可以运行这个命令的吧,来看一下
在这里插入图片描述
先进入d盘,然后再进入到jdk下的bin目录中,执行一下javac命令,成功
在这里插入图片描述
那么问题也来了,不可能每次都要进入到jdk的bin目录下才执行,那岂不是很麻烦?有没有什么办法在任意目录下都能执行java命令呢?答案是当然可以
既然是外部命令,你想让机器去识别这个命令,那当然要告诉机器它在哪里,所以我们应该把jdk的bin目录配置到Path环境变量中
在这里插入图片描述

Path变量的值是由多个值组合而成,多个值之间用分号;分隔,咱们的系统肯定是取Path变量,通过分号切割Path变量的值,然后遍历去找相关命令,所以我们只要在Path变量中加入我们的D:\Program Files\Java\jdk1.8.0_201\bin路径即可,注意后面要加上分号,那我们配置的JAVA_HOME变量有什么用呢?
我们一般会这么配置
JAVA_HOME=D:\Program Files\Java\jdk1.8.0_201
Path=%JAVA_HOME%\bin

%JAVA_HOME% 在变量前后各加上一个%是就引用该变量

这么做的目的是因为jdk的目录是可能变的,比如我要用将jdk目录更换到E盘或者jdk目录名称变更了,这时只需要修改JAVA_HOME变量就行了,这里将可能会改变的东西抽出来放在JAVA_HOME变量中就是方便修改用的
那为何要叫JAVA_HOME呢?这只是一个变量名而已,取什么名字都可以,叫JAVA_HOME是因为看着比较直观,一眼就知道是什么

最后再来看一下效果
在这里插入图片描述
直接打开cmd,成功执行javac命令
javac命令用来将*.java源文件编译成计算机可以识别的*.class二进制文件
java命令的作用则是启动JVM然后加载*.class文件
我们可以在系统中指定classpath变量,这个classpath变量的值就是class文件所在目录路径,指定了classpath之后JVM会在classpath路径下去加载class文件,关于JVM是如何加载class类,我会在后面写到,如果大家有兴趣的话可以关注下博主

如果不知道怎么运行cmd,可以看看我的这篇文章—>关于运行windows应用

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章