JDK11.0.7下载及安装详细教程(win10)
0.背景知识
JRE: Java Runtime Environment
JDK:Java Development Kit
JRE顾名思义是java运行时环境,包含了java虚拟机,java基础类库。是使用java语言编写的程序运行所需要的软件环境,是提供给想运行java程序的用户使用的。
JDK顾名思义是java开发工具包,是程序员使用java语言编写java程序所需的开发工具包,是提供给程序员使用的。JDK包含了JRE,同时还包含了编译java源码的编译器javac,还包含了很多java程序调试和分析的工具:jconsole,jvisualvm等工具软件,还包含了java程序编写所需的文档和demo例子程序。
如果你需要运行java程序,只需安装JRE就可以了。如果你需要编写java程序,需要安装JDK。
JRE根据不同操作系统(如:windows,linux等)和不同JRE提供商(IBM,ORACLE等)有很多版本,最常用的是Oracle公司收购SUN公司的JRE版本。
可以参考百度百科。
比较重要的一点是,上图这个过程,程序编译到运行。
因此java的一处编译、到处运行核心就是java的虚拟机,也就是JVM。
可以把Java API类库中的Java SE API子集和Java虚拟机这两部分统称为JRE(JAVA Runtime Environment),JRE是支持Java程序运行的标准环境。
JDK已经包含了JRE,所以我们直接下载他就可以。
一、下载
官网 https://www.oracle.com/java/technologies/javase-downloads.html
我直接选择了比较新的11
https://www.oracle.com/java/technologies/javase-jdk11-downloads.html
但是因为官网访问有些慢,我直接去清华镜像下载了。
电脑是 64 位的windows,于是下载了一样的11.0.7版本,虚拟机是sun公司的hotspot,下面的openj9的应该是ibm公司的。
这个版本是zip版本,不同于exe,解压之后可以看到所有内容:
因此不用执行安装程序,我们自己手动配置环境变量就可以。
二、环境变量配置
为什么要配置环境变量?简单来说,就是给程序执行一个指路方向。
可以看一看这篇博客的生动讲解:
因为主要记录步骤,我就直接来写过程了:
这是我的jdk的目录以及对应下面bin文件夹的目录,下面去配置。
此电脑 -> 属性 -> 高级系统设置 -> 环境变量
可以看到环境变量分了两类:
一个是给操作系统用的;一个是给本机用户用的。。
系统环境变量的意思是无论你是用那个用户帐号登陆后都能够共享的环境变量,就是有点公用的意味。
而用户环境变量顾名思义就是只有这个用户登陆后才能被这个用户使用的环境变量,就是有点私有的意味。
用户变量只对当前用户有效;系统变量对本机所有用户有效。
这里肯定希望改变的是系统变量,毕竟登windows的别的账户也希望有这些设置。
- 新建 JAVA_HOME 变量。
- 增加Path变量
- classpath变量不用配置。(以前需要)
这三个变量各有自己的作用:
- JAVA_HOME里面的内容是JDK安装目录。其实不设置JAVA_HOME也是可以的,只要有Path就行了。但是设置JAVA_HOME可以方便在Path中使用、更新JDK目录。比如,jdk的安装路径是C:\jdk1.5.0_22,Path设置为C:\jdk1.5.0_22\bin,而当我们把JAVA_HOME设为C:\jdk1.5.0_22时,设置Path就可以写成%JAVA_HOME%\bin,以后当我们使用其他版本的jdk,就可以只修改JAVA_HOME的值,此外,当我们要使用Redis等组件时,也可以灵活使用JAVA_HOME做些改动。
- 因为电脑系统将根据该变量的值找到java编程中需要的一些程序,比如javac.exe、java.exe、javah.exe等等,其中javac.exe程序是用于编译java源代码,java.exe程序是用于执行后缀为class的代码。所以Path的作用其实就是方便我们使用一些命令程序。
- 配置classpath变量,才能使得java解释器知道到哪里去找标准类库,这些标准类库是别人已经写好了的,我们只管使用。比如我们常用到java.lang包中的类,在配置classpath变量后被设为默认导入,所以在写程序时就不用import这个包了。那么这些标准类库在哪呢?在以JDK的lib目录下以jar为后缀的文件中:一个是dt.jar,一个是tools.jar。但是已经说了现在最新的逻辑是,如果不配置,可以到默认的地方找到所需的文件;如果配置错误,那么运行错误;如果配置正确,那么运行正确。因此还不如不配。
那我们先配置 JAVA_HOME
- 新建
- 然后输入变量名为 JAVA_HOME
- 然后输入变量值为jdk所在的目录,保证这个目录的下一层就是bin文件所在目录。
- 确定。
再来配置Path
- 点击Path,点击编辑
- 然后点击新建
- 输入%JAVA_HOME%\bin
- 确定
在Path变量里面加了一条,也就是把把JAVA_HOME的bin目录附加到了系统环境变量Path上。前面的JAVA_HOME变量对应的值显然我们配置过了,那么用这个变量名代替,后面再往下一层,系统就能找到bin目录。
三、测试
上一步已经结束了,其实简单几个步骤而已,我们来看看java是不是已经安装配置完成。
打开命令行,键入 java
已经显示了一堆命令,说明配置没问题。
再键入 javac
再键入 java -version 查看安装的版本:
至此,已经完成了java的安装和配置,用记事本,或者别的简单编辑器,编辑代码之后就可以在命令行里编译,然后运行了。
但这肯定不是我们的一般做法,我们希望更高效的工具辅助我们写代码,接着安装IDEA。
JDK11.0.7下载及安装详细教程(win10)的更多相关文章
- MySQL8.0.20下载与安装详细图文教程,mysql安装教程
MySQL下载与安装(8.0.20版)教程 mysql安装包+mysql学习视频+mysql面试指南视频教程 下载地址: 链接:https://pan.baidu.com/s/1FmLFhGlajBQ ...
- mysql的下载和安装详细教程(windows)
Windows下安装MySQL详细教程 1.安装包下载 2.安装教程 (1)配置环境变量 (2)生成data文件 (3)安装MySQL (4)启动服务 (5)登录MySQL (6)查询用户密码 ...
- Qt Creator下载和安装(详细教程)
简介 Qt是跨平台的图形开发库,目前由Digia全资子公司 Qt Company 独立运营,官方网址: http://www.qt.io/ 也可以访问Qt项目域名:http://qt-project. ...
- SQL Server 2017 下载及安装详细教程
SQL Servicer 2017 下载及安装 1)下载安装SQLServer 2)安装SQLServer management Studio. 一. 下载及安装SQLServer 下载链接( ...
- mysql8.0.13下载与安装图文教程
一.进入mysql网站:https://dev.mysql.com/downloads/mysql/ 二.进入Community选择MySQL Communtiy Server 三.将页面拉到最下面选 ...
- SQL Server 2012 下载和安装详细教程
https://blog.csdn.net/qq_37591637/article/details/93102794 选择图片中的三个,然后点击下载 ,文件内存很大 下载以后,如图所示,双击.exe程 ...
- (转载)Centos下Elasticsearch安装详细教程
原文地址:http://www.cnblogs.com/sunny1009/articles/7874251.html Centos下Elasticsearch安装详细教程 1.Elasticsear ...
- Centos下Elasticsearch安装详细教程
Centos下Elasticsearch安装详细教程 1.Elasticsearch简介 ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于 ...
- 面系那个对象开发原则.高内聚.低耦合+Python安装详细教程+print输出带颜色的方法
面系那个对象开发原则.高内聚.低耦合 软件设计中通常用耦合度和内聚度作为衡量模块独立程度的标准.划分摸块的一个准则就是高内聚低耦合. 这是软件工程中的概念,是判断设计好坏的标准,主要是面向OO的设计, ...
随机推荐
- Python 列表生成式 生成器
[x for x in os.listdir("F:\XXX")] 生成器(x * x for x in range(10)) 如果列表元素按照某种算法推算出来,那我们就可以在循环 ...
- 普通list和树状list互转
import java.util.ArrayList; import java.util.List; public class TreeNode { private String id; privat ...
- 【Python学习笔记一】基础环境安装:idea+python
IDEA 安装 1.下载IDEA 官网下载地址: https://www.jetbrains.com/idea/ 2.安装的时候配置基本选择默认配置就行 参考链接:https://blog.csd ...
- javascript : 找到一个树型数据的一个节点及其所有父节点
如题. (function () { let tree = { "id": 0, "label": "all", "childre ...
- 题解 洛谷 P4098 【[HEOI2013]ALO 】
考虑原序列中的每一个值作为构成最终答案的那个次大值,那么其所在的合法区间最大时,其对答案的贡献最大. 一个值作为最大值时有两个合法的最大区间,一个是左边第二个比其大的位置和右边第一个比其大的位置构成的 ...
- github 新功能 profile README.md
引 自从github被微软收购后,每天都会有一些新花样,ui变化,界面变化,更多的功能,相信这个它会越来越好,程序员越来越喜欢.今天浏览大佬的github 无意中发现了 github profile ...
- ES的集群原理
文章转载自:https://www.cnblogs.com/soft2018/p/10213266.html 一.ES集群原理 查看集群健康状况:URL+ /GET _cat/health (1).E ...
- 面试题四十三:在1~n整数中1出现的次数
方法一:直观来看,遍历1到n,每个数去做%10的循环判断 int Number1_B_1toN( int n){ int sum=0; for(int i=1;i<=n;i++){ int k= ...
- 阿里云OSS服务器的使用
关于文件上传,我们一般使用OSS服务器.大致为两种上传方式: 详情官网参考:https://help.aliyun.com/document_detail/31927.html?spm=a2c4g.1 ...
- 爬虫(三)-之Urllib库的基本使用
什么是Urllib Urllib是python内置的HTTP请求库 包括以下模块 urllib.request 请求模块 urllib.error 异常处理模块 urllib.parse url解 ...