超详细!JDK 8 下载、安装和环境配置
wptr33 2025-01-19 00:40 15 浏览
前言
Java 是一门开源的程序设计语言,它配套的 JDK 同样也是可以免费下载使用的。不过 JDK 的使用对于新手来讲,稍微有一点点门槛,因为涉及到一些特殊的配置,还是有些麻烦的。
不过没关系,蜗牛准备了保姆级的超详细教程,帮你快速用上 JDK!!!
上一篇文章,学习 Java,使用哪个版本最好,我们选择了 JDK 8,因此本文就以 JDK 8 为例,介绍它的下载、安装和环境配置全过程。
JDK 8 下载
JDK 8 虽然是 Oracle 基于 Java SE 8 的标准发布的开发工具包,但 Oracle 毕竟是个商业公司,在 2019 年 1 月就针对 8 这个版本停止了免费更新,也就是说这个版本往后的更新都需要付费。
如果你是商业用途,就要注意下版本是否需要付费了,如果你是个人学习,那么关系不大,注册一个 Oracle 帐户,去 Oracle 网站下载最新版即可,链接为:https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html。
如果你嫌 Oracle 账号注册麻烦,可以后台回复 jdk,蜗牛已经帮你下载好安装包了,各个操作系统平台都有。
JDK 8 安装与配置
接下来介绍下 macOS 和 Windows 平台下 JDK 8 的安装与配置。
macOS 下 JDK 安装与配置
下载后得到的 dmg 安装包。
按提示安装后, /Library/Java/JavaVirtualMachines/ 下会新增一个文件夹 jdk1.8.0_281.jdk,该文件夹下可以找到 JDK 的家目录,其全路径为:
/Library/Java/JavaVirtualMachines/jdk1.8.0_281.jdk/Contents/Home
接下来就是配置环境变量,目的就是让 Java 相关的指令,能被计算机识别到,方便计算机运行 Java 程序。
一、打开配置文件
进入终端,输入以下指令进入编辑页。
sudo vi ~/.bash_profile
二、添加 Java 家目录,类路径和指令路径的配置,若已存在则用目标值覆盖。
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_281.jdk/Contents/Home
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH
三、生效配置文件。
source ~/.bash_profile
四、验证 JDK 是否可用。
java -version
输入版本指令后,看到以上信息就说明 JDK 可用了。
Windows 下 JDK 安装与配置
需要先明确下你的 Windows 系统是 32 位还是 64 位,然后选择对应的安装包。如果搞错的话,比如 32 位系统要安装提供给 64 位用的安装包,那就会在第一步就拦住你,像下面这样。
确定当前系统是 32 位还是 64 位,可以按以下路径进入查看:win-计算机-系统属性。
所以我现在的计算机操作系统是 32 位的,要选择 32 位的安装包。下载后解压得到 exe 安装包,然后按照提示进行安装。
一路确认下去,JDK 一般默认安装在系统盘里。
指定安装目录下会出现 jdk 和 jre 两个目录,后者是纯粹的 Java 应用程序运行环境,而前者是开发环境,jdk 包含了 jre。
安装完成后,就需要配置环境变量,让 Java 相关指令被计算机识别,方便运行 Java 应用程序。
一、找到环境变量配置入口:win-计算机-系统属性-高级系统设置-高级-环境变量。
二、新增系统变量 JAVA_HOME,变量值就是 JDK 的路径。
三、编辑系统变量 PATH,原变量值后面追加 ;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin。
分号是切割不同命令目录的,这里的命令目录集合,都可以作为命令行窗口可直接执行的命令。双百分号是变量引用的意思,%JAVA_HOME% 就代表之前配置的 JAVA_HOME 变量,这里当路径引用。
以下变量名和变量值做参考,变量名和变量值用 = 分割。
JAVA_HOME=C:\Program Files\Java\jdk1.8.0_281
Path=原内容勿动;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin
四、验证 JDK 是否可用。
win +R 打开运行,输入 cmd 唤起命令行窗口,输入版本命令。
java -version
看到如图提示,说明安装成功!
【阿里校招提前批开始啦,2022 届搞 Java 的朋友请联系我内推】
我是蜗牛,大厂程序员,专注技术原创和个人成长,正在互联网上摸爬滚打。欢迎关注我,和蜗牛一起成长,我们一起牛~下期见!
相关推荐
- 十年之重修Redis原理(redis重试机制)
-
弱小和无知并不是生存的障碍,傲慢才是。--------面试者...
- Redis 中ZSET数据类型命令使用及对应场景总结
-
1.zadd添加元素zaddkeyscoremember...
- redis总结(redis常用)
-
RedisTemplate封装的工具类packagehk.com.easyview.common.helper;importcom.alibaba.fastjson.JSONObject;...
- 配置热更新系统(如何实现热更新)
-
整体设计概览┌────────────┐┌────────────────┐┌────────────┐│配置后台服务│--写入-->│Red...
- java高级用法之:调用本地方法的利器JNA
-
简介JAVA是可以调用本地方法的,官方提供的调用方式叫做JNI,全称叫做javanativeinterface。要想使用JNI,我们需要在JAVA代码中定义native方法,然后通过javah命令...
- SpringBoot:如何优雅地进行响应数据封装、异常处理
-
背景越来越多的项目开始基于前后端分离的模式进行开发,这对后端接口的报文格式便有了一定的要求。通常,我们会采用JSON格式作为前后端交换数据格式,从而减少沟通成本等。...
- Java中有了基本类型为什么还要有包装类型(封装类型)
-
Java中基本数据类型与包装类型有:...
- java面向对象三大特性:封装、继承、多态——举例说明(转载)
-
概念封装:封装就是将客观的事物抽象成类,类中存在属于这个类的属性和方法。...
- java 面向对象编程:封装、继承、多态
-
Java中的封装(Encapsulation)、继承(Inheritance)和多态(Polymorphism)是面向对象编程的三大基本概念。它们有助于提高代码的可重用性、可扩展性和可维护性。...
- 怎样解析java中的封装(怎样解析java中的封装文件)
-
1.解析java中的封装1.1以生活中的例子为例,打开电视机的时候你只需要按下开关键,电视机就会打开,我们通过这个操作我们可以去间接的对电视机里面的元器件进行亮屏和显示界面操作,具体怎么实现我们并不...
- python 示例代码(python代码详解)
-
以下是35个python代码示例,涵盖了从基础到高级的各种应用场景。这些示例旨在帮助你学习和理解python编程的各个方面。1.Hello,World!#python...
- python 进阶突破——内置模块(Standard Library)
-
Python提供了丰富的内置模块(StandardLibrary),无需安装即可直接使用。以下是一些常用的内置模块及其主要功能:1.文件与系统操作...
- Python程序员如何调试和分析Python脚本程序?附代码实现
-
调试和分析Python脚本程序调试技术和分析技术在Python开发中发挥着重要作用。调试器可以设置条件断点,帮助程序员分析所有代码。而分析器可以运行程序,并提供运行时的详细信息,同时也能找出程序中的性...
- python中,函数和方法异同点(python方法和函数的区别)
-
在Python中,函数(Function)...
- Python入门基础命令详解(python基础入门教程)
-
以下是Python基本命令的详解指南,专为初学者设计,涵盖基础语法、常用操作和实用示例:Python基本命令详解:入门必备指南1.Python简介特点:简洁易读、跨平台、丰富的库支持...
- 一周热门
-
-
C# 13 和 .NET 9 全知道 :13 使用 ASP.NET Core 构建网站 (1)
-
因果推断Matching方式实现代码 因果推断模型
-
git pull命令使用实例 git pull--rebase
-
面试官:git pull是哪两个指令的组合?
-
git 执行pull错误如何撤销 git pull fail
-
git fetch 和git pull 的异同 git中fetch和pull的区别
-
git pull 和git fetch 命令分别有什么作用?二者有什么区别?
-
git pull 之后本地代码被覆盖 解决方案
-
还可以这样玩?Git基本原理及各种骚操作,涨知识了
-
git命令之pull git.pull
-
- 最近发表
- 标签列表
-
- git pull (33)
- git fetch (35)
- mysql insert (35)
- mysql distinct (37)
- concat_ws (36)
- java continue (36)
- jenkins官网 (37)
- mysql 子查询 (37)
- python元组 (33)
- mybatis 分页 (35)
- vba split (37)
- redis watch (34)
- python list sort (37)
- nvarchar2 (34)
- mysql not null (36)
- hmset (35)
- python telnet (35)
- python readlines() 方法 (36)
- munmap (35)
- docker network create (35)
- redis 集合 (37)
- python sftp (37)
- setpriority (34)
- c语言 switch (34)
- git commit (34)