JDK安装环境变量配置以及背后的原理

JDK的安装

首先呢我们打开jdk的官网

http://www.oracle.com/technetwork/java/javase/downloads/

进入后我们找到jdk8,我之前配置过jdk11,但是后来发现因为jdk版本过高,在win11下不仅部分JavaWeb功能被更新换代了,同时配置Tomcat的时候还需要在startup文件下设置环境变量,后续还有种种问题,不要太悲催,索性换个年轻的版本啦.

因为我的电脑是windows64,所以我下载64对应的exe:

有些小朋友可能想知道如何看自己电脑的版本:

右键选择显示设置:

这时我的jdk已经下载好啦,同时还生成了jre8.注意:如果你下载的是jdk11,不会自动帮你生成jre.在普通的Java项目中,有没有jre其实并不是那么重要.但是在Tomcat的配置中,有没有jre直接影响服务器对路径的读取!这个时候需要手动生成jre!

然后就到了激动人心的环境变量配置时间.

环境变量配置

显示设置点击后搜索高级系统设置,然后可以得到:


在系统变量中新建一个变量JAVA_HOME

需要找到安装jdk下的包含lib目录的路径:

然后需要配置path

变量名:Path

变量值:%JAVA_HOME%\bin;

最后配置CLASSPATH

变量名:CLASSPATH

变量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
注意哦,此处分号的前面的点一定要写,否则无法用命令行读取java的.class文件。

图片就不放了.

最后在搜索栏里搜索cmd,以管理员身份运行

输入命令java -version

出现如图所示的结果即可.

原理

鄙人不才,有两年的环境变量配置经验(配置了两年才配好),好的啦,开个玩笑.

我在配置tomcat环境变量失败的时候,曾经看到一个奇怪的要求.

需要在setclasspath.bat文件的开头声明环境变量,简单就是set JAVA_HOME =路径、set JRE_HOME=路径.

有的甚至只需要在catalina.bat中设置就好.

所以我们发现第一:java的各个bat之间有互相调用的关系.

第二:系统无法直接读取jdk中我们需要的文件(比如我们真正调用的java.exe)

第三,但是输入命令时系统可以直接读取jdk中某些其他文件.

根据以上的推测,我去查找了求证资料.整理如下:

1:环境变量其实就是一系列的目录,告诉我们文件的具体方位.而参照我们C语言每次运行时会弹出的exe文件,对Java代码的编译其实也是启动java.exe或者其它.所以我们要将java.exe等目录加入到path这个环境变量中.cmd的命令会直接去path读取.

但是问题来了,要读取的目录与命令有那么多,难道我们要将所有的命令都加入到path中嘛,我们怎么知道什么时候要用到什么目录.

根本不用担心,因为path对目录的读取是一个目录一个目录读下去的.

举个例子,我们假设path接收命令要对jdk的lib目录中的dt进行读取.它发现有这样一条指令%JAVA_HOME%lib.JAVA_HOME我们之前已经配置过了是jdk的路径,指令顺利进入lib目录,读取到tools.jar,发现不对开始读取下一个sa-jdi.jar,一直读到自己想要的为止.

2:那么classpath的作用又是什么?

我们在idea中新建一个Java文件:

比如这个,最开始是Text16.java,编译过后就变成了Text16.class文件,然后由类装载器进行装载,那么类装载器怎么知道.class文件在哪.这个时候就需要用到classpath啦.classpath和path的原理相同,也是一个目录一个目录的去读取,在dt.jar与tools.jar中.

,最开始是Text16.java,编译过后就变成了Text16.class文件,然后由类装载器进行装载,那么类装载器怎么知道.class文件在哪.这个时候就需要用到classpath啦.classpath和path的原理相同,也是一个目录一个目录的去读取,在dt.jar与tools.jar中.

但是在1.5之后classpath不是必须配置;了,在1.5之前找不到JDKlib文件下的.jar所以无法在当前目录下加载类.而JDK的1.5之后JRE能自动搜索目录下类文件,并对dt.jar进行加载,也就没有必要进行手动配置啦.

win10的JDK安装环境变量配置相关推荐

  1. win10下JDK环境变量配置与IDEA开发工具清晰简洁步骤,迈出Java学习第一步

    文章目录 一.JDK下载 二.win10下环境变量配置 三.开发工具IDEA安装 一.JDK下载 可以直接去官网下载,推荐下载JDK8.0版本 也可以这个网盘里面找一下下载:Windows下JDK8. ...

  2. win10 Java JDK环境变量配置

    注意下载JDK 版本不需太高(百度一下jdk下载就好了)   第一步 我们首先打开win10电脑的资源管理器,快捷键win+E 然后选中此电脑,鼠标右键在弹出的菜单中选中属性的按钮 第二步 看到窗口的 ...

  3. Win10系统Jdk环境变量配置遇到'javac' 不是内部或外部命令,也不是可运行的程序 或批处理文件 解决办法。

    背景:下载官网的jdk并安装,1.8的不需要配置CLASSPATH,只需要配置JAVA_HOME和PATH: 网上很多方式可能能够解决你的问题,但都不是我的原因,比如 1.path中的路径由相对路径改 ...

  4. win10+tomcat+php+配置环境变量配置,Win10系统Tomcat环境变量配置方法

    在Win10系统中配置Tomcat环境变量之前,需要先配置JAVA,之后就可以配置Tomcat环境了,网络上的教程要么太简单,不明觉厉,要么太复杂,笔者整理了以下思路,便是以下Win10系统Tomca ...

  5. 手把手JDK环境变量配置

    分为下载,配置,验证三个步骤解释如何进行JDK环境变量配置. 步骤一: 首先查看配置成功后的效果: tip:点击win-->运行(或者使用win+r,或者shift+鼠标右键打开powershe ...

  6. win10+tomcat+php+配置环境变量配置,Win10系统Tomcat环境变量配置方法一览

    Win10系统Tomcat环境变量配置方法一览 2017-08-01 08:15     标签:Win10 很多win10用户在配置Tomcat环境变量的时候,都需要先配置JAVA,这样才能配置Tom ...

  7. java中的jdk环境变量配置

    关于java的jdk安装网上有许多相关的教程.本篇博客写的是我出现的问题及其相关处理方式! 一.找到相关的软件下载地址 http://www.pc0359.cn/downinfo/37580.html ...

  8. java环境变量设置 win2003,2021-03-09Win10的Java环境配置Win10下Java环境变量配置

    接下来主要讲怎么配置 Java 的环境变量,也是为了以后哪天自己忘记了做个备份 (注:win10的Java环境变量配置和其他的windows版本稍有不同) 在电脑桌面 右键点击 "此电脑&q ...

  9. Java从0到Hello World(一)-手把手教你做JDK环境变量配置

    分下载,配置,验证三个步骤讲解如何进行JDK环境变量配置. 步骤1:首先看配置成功后的效果 步骤2:下载,并解压到E:\JDK 步骤3:环境变量配置 步骤4:Win10 下环境变量Path的配置 步骤 ...

最新文章

  1. Sabayon:治理 GNOME 用户的设置
  2. 在单缓冲区和双缓冲区结构下,读入并分析完该文件的时间分别是
  3. lesson3 数码管静态显示及定时器和中断应用
  4. 2018-2019-2 20175223 实验三《敏捷开发与XP实践》实验报告
  5. 基于OAuth2的认证(译)
  6. java web的动静分离_Apache结合Tomcat实现动静分离的方法
  7. python 变量
  8. 开源地图引擎openlayers_由quot;地图quot;到quot;指南针quot;:疫后智能营销的演化逻辑...
  9. Java 错误:找不到或无法加载主类(源文件中含有包名 package)
  10. Ubuntu20.04安装ROS教程(虚拟机/双系统,含报错解决)
  11. 钢琴调律经验(菜鸟版)
  12. 互联网上的UFO教派
  13. 如何用Matlab求不定积分
  14. threejs效果记录
  15. C# 键盘中的按键对应的KeyValue
  16. Android 页面Scheme配置
  17. 取模后的余数,向负无穷方向舍入
  18. Web全栈~28.网络编程
  19. 顺丰速运和顺丰快递_携手快递外卖小哥,石浦交警送上“安全大礼包”
  20. 语录集人生---投资

热门文章

  1. 没有期刊申请清华博士_清华大学官方:“博士生无须发表论文”理解有误!
  2. VIVADO软件学习
  3. Fortran和C/C++混合编程学习笔记(一):编译链接
  4. ie上svg的兼容问题
  5. 【数学思维】最大值与上确界
  6. 现任明教教主CCNP Security SecureV1.0 第一天.3
  7. 单片机c语言报错_asm啥意思,SPMC75系列单片机地C和ASM( - 控制/MCU - 电子发烧友网...
  8. Problem A: 算法4-5:求子串位置的定位函数
  9. Google的60款开源项目
  10. 饭后吃一种水果就能化痰止咳(附赠10个化痰小偏方)