如果想要开发Java程序/Java项目之前,必须要安装和配置JDK,这里的JDK表示Java17,不过下载软件的时候,强烈推荐大家一定要去软件的官网下载,因为官网提供的软件版本是最新的,会修复旧版本遗留的问题,这样我们在使用软件时可以避免一些问题。
因为以后你们去公司开发Java项目时使用的可能是Java8或者Java17,而且如果想要使用JDK新特性(比如Java9以及以上的新特性),那么需要高版本的JDK(例如Java17),Java17是向下兼容Java8,也就是说Java8的功能在Java17中都可以使用,但是反过来就不行。
还有基于Java的一些开发常用的框架已经是基于Java17开发的了,例如Spring 6.0,Spring Boot3.0等等
因此现在学习Java17的最佳时机了。
访问Java的官网,其访问地址是https://www.oracle.com/java/
点击右上角的Download Java,跳转到Java的下载页面
Java的下载地址 https://www.oracle.com/java/technologies/downloads/
目前Oracle官方提供的最新Java版本\JDK版本是Java19和Java17,但是最新的LTS版本是Java17
这次我们要下载的是Java17,因此点击下载页面的Java17切换到Java17
目前Java17支持三个操作系统
大家在下载Java17的时候需要根据自己所使用操作系统的版本来选择对应版本的Java17
Windows下通过快捷键Windows+r打开运行窗口,然后输入winver命令后回车
我这里使用的操作系统是Windows11 22H2,因此选择Windows版x64 Installer Java17,x64 Installer 表示64位安装程序
和Java8相比,Java17已经不在提供32位的安装程序
如果想要知道自己的系统是32位还是64位,点击桌面的此电脑,然后右键点击属性就可以查看到系统类型
如果桌面没有此电脑,依次点击设置->个性化->主题->桌面图标设置
最后勾选计算机即可在桌面显示此电脑
和Java8相比下载时不再需要同意许可协议,也不需要注册和登录Oracle账号
弹出用户账户控制,你要允许此应用对你的设备进行更改吗?点击是即可。
完成安安装后可以点击后续步骤和关闭
后续步骤:跳转到Java17的官方文档:https://docs.oracle.com/en/java/javase/17/index.html,大家记住这个地址,以后会使用到。
关闭:关闭安装向导,完成Java17的安装
Windows版Java17的默认安装目录是C:\Program Files\Java\jdk-17.0.5
Windows版Java17的安装目录说明
目录 | 说明 |
---|---|
bin | 该目录下主要存放JDK的各种工具,例如javac,java等等 |
conf | 该目录下主要存放JDK的相关配置文件 |
include | 该目录下主要存放一些平台(操作系统)特定的头文件 |
jmods | 该目录下主要存放JDK的各种模块 |
legal | 该目录下主要存放JDK各种模块的授权文档 |
lib | 该目录下主要存放JDK的一些补充jar包以及Java源码(src.zip) |
作为Java的初学者来说,目前只需要关注bin目录和src.zip压缩文件
如果你之前安装过Java8,然后就会发现Java17和Java8的src.zip目录结构也有些不同,因为Java9以后的JDK已经模块化管理
Path环境变量就是一系列的路径,例如%SystemRoot%,%SystemRoot%\system32等等
%SystemRoot% 表示Windows系统根路径,例如C:\Windows
Path环境变量的作用 就是当我们在终端上输入命令回车以后,系统会从当前路径和Path环境变量对应的路径查找命令对应的可执行程序,然后执行该程序。
当我们在终端上输入notepad命令回车以后,系统会打开notepad对应的记事本程序
notepad对应的程序路径是C:\Windows\notepad.exe
但是如果我们输入一个不存在的命令,那么系统无法执行命令对应的程序,然后提示不是内部或外部命令,也不是可运行的程序或批处理文件
需求:想要在终端的任意路径下输入QQ就可以启动QQ,可以
当实现在终端的任意路径下输入QQ就可以启动QQ,可以举一反三实现在终端的任意路径启动其他的程序
点击桌面QQ快捷方式,右键打开属性面板,然后点击打开文件所在位置,找到QQ的安装目录的bin目录(C:\Program Files (x86)\Tencent\QQ\Bin)
点击环境变量
配置QQ的Path环境变量
首先点击系统变量的Path,然后再点击编辑
然后将QQ的bin目录添加到Path环境变量中
点击三次确定关闭系统属性面板,完成QQ的Path环境变量配置
验证QQ的Path环境变量是否配置成功
首先重新开启一个终端,然后在终端的任意路径输入QQ看看是否能够启动QQ,如果能够启动表示配置成功
当安装了Java17以后,还需要配置Java17的JAVA_HOME环境变量和Path环境变量,只有把这两个环境变量配置好以后,那么就可以使用Java17来开发Java程序
JAVA_HOME表示Java的安装路径,例如C:\Program Files\Java\jdk-17.0.5
后期我们会使用到Java开发的一些工具(Tomcat,Maven,JMeter),这些工具都会依赖JAVA_HOME环境变量,如果你不配置,那么无法正常使用这些工具,它还会提示你配置JAVA_HOME环境变量。
例如在终端执行mvn --version时会提示需要配置JAVA_HOME环境变量
而配置JAVA_HOME以后系统会输出maven的版本信息以及依赖的Java信息
首先鼠标左键点击任务栏的开始菜单,然后搜索编辑系统环境变量,点击最佳匹配的编辑系统环境变量
点击环境变量
配置Java17的JAVA_HOME环境变量
环境变量分为用户变量和系统变量
用户变量:只针对当前的用户有效
系统变量:针对所有的用户都有效
建议大家使用系统变量
点击系统变量的新建,然后输入变量名和变量值
变量名:JAVA_HOME
变量值:C:\Program Files\Java\jdk-17.0.5
依次点击三个确定,关闭系统属性面板,完成JAVA_HOME环境变量的配置
验证Java17的JAVA_HOME是否配置成功
验证的方法就是启动一个终端,在文件资源管理器的地址输入cmd回车即可启动终端
然后在终端上输入echo %JAVA_HOME%,如果能够输出JAVA_HOME对应的Java17安装路径,表示配置成功
不同于Java8的是当我们安装完Java17后,Java17会自动配置Path环境变量
不过其路径指向的并不是Java17安装的bin目录C:\Program Files\Java\jdk-17.0.5\bin,该目录下的开发工具大部分都是基于终端运行的,如果双击打开就会闪退,例如javac,java等等。
而是C:\Program Files\Common Files\Oracle\Java\javapath,该目录下只有四个开发工具,分别是javac,java,javaw以及jshell
javac 用于编译java源文件(.java结尾的文件),编译成功之后会生成字节码文件(.class结尾的文件)
java 用于解释执行字节码文件,运行Java程序
这样也就意味着只能在终端的任意路径下使用这四个工具,如果想要使用其他的工具(例如jconsole),系统也会提示不是内部或外部命令,也不是可运行的程序或批处理文件
因此我们需要将Java17安装路径的bin目录添加到Path环境变量中
首先鼠标左键点击任务栏的开始菜单,然后搜索编辑系统环境变量,点击最佳匹配的编辑系统环境变量
点击环境变量
修改Java17的Path环境变量
首先点击系统变量的Path环境变量,再点击编辑
然后将Java17自动配置的C:\Program Files\Common Files\Oracle\Java\javapath修改成C:\Program Files\Java\jdk-17.0.5\bin
修改之前
修改之后
然后在终端输入jconsole看看能否启动控Java监视和管理控制台
如下图所示,启动成功则表示配置成功
首先鼠标左键点击任务栏的开始菜单,然后搜索编辑系统环境变量,点击最佳匹配的编辑系统环境变量
点击环境变量
修改Java17的Path环境变量
首先点击系统变量的Path环境变量,再点击编辑
然后将C:\Program Files\Java\jdk-17.0.5\bin修改成%JAVA_HOME%\bin
修改之前
修改之后
然后在终端输入jconsole看看能否启动控Java监视和管理控制台
如下图所示,启动成功则表示配置成功
假设现在已经在Windows系统上安装了两个不同版本的Java,分别是Java8和Java17
那么如何知道自己目前所使用的Java版本呢?
只需要在终端上执行javac -version和javac -version即可
从执行结果看出当前使用的Java版本是Java17
那么如何切换到Java8?
其实很简单,只需要将JAVA_HOME修改成Java8的安装目录即可
修改之前
修改之后
修改完成以后重新开启一个终端,然后再执行javac -version和java -version
从执行结果看出已经从Java17切换到Java8
因为在Path环境变量中引用了JAVA_HOME,因此想要切换Java版本只需要修改JAVA_HOME环境变量即可
如果哪天你不需要使用Java8时就可以将Java17卸载咯,不过大概率会一直使用,不会将其卸载
当你学会了Java17的卸载以后,那么Windows系统上其他的软件也可以按照同样的方式卸载
Windows下想要卸载Java17,首先我们需要删除Java17相关的和Path环境变量和JAVA_HOME环境变量
然后点击三次确定完成关闭系统属性面板,这样就可以删除Java8的Path环境变量配置
然后开启新的终端,在终端输入jconsole 或者javac -version和java -version,如果系统提示不是内部或外部命令,也不是可运行的程序或批处理文件表示删除成功
然后依次点击两次确定关闭系统属性面板
删除完成以后开启终端,然后在终端输入 echo %JAVA_HOME% 命令验证是否删除成功
然后在安装的应用中卸载Java17
打开安装的应用
右键点击开始菜单的安装应用
在安装的应用搜索Java
然后在弹出的用户账户控制,你要运行此应用对你的设备进行更改吗?选择是即可