一、上集回顾

在《Java入门到实践系列(1)——Java简介》中提到过,Java程序是运行在Java虚拟机的,也展示过下面这张图。

JDK:Java程序开发工具包。

JRE:Java运行时环境。

JVM:Java虚拟机。

从这张图可以看出,JDK包含JRE,JRE包含JVM。而我们作为Java开发人员,肯定是要安装JDK的啦。

二、JDK的安装

JDK1.8官网下载地址:

https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html

以下截图是Windows10为例的安装步骤

1、下载jdk安装包

害,很久没有从下载了,这次特地删了重新安装。原来的官网下载地址也不好使了,现在下载还要注册登录Oracle账号,有丶麻烦!

2、安装

双击打开安装包

我下载的文件名是jdk-8u261-windows-x64.exe,这里的8是大版本,就是我们俗称的jdk1.8。u是Update的首字母,261呢是小版本,也就是jdk1.8的261次更新。

上篇文章中也提到,我们在企业中用到的还是jdk1.8为主,所以我们只需要下载1.8版本的,至于后面的小版本,不是很重要,因为每次的重大语法更新之类的,都是在大版本里更新的,小版本主要是修复bug的。

直接点击下一步

安装路径用默认的就行啦~

剩下的一路傻瓜式安装,就不截图了,安装路径默认就行啦!

三、环境变量的配置

直接上图

步骤:右键我的电脑-》属性-》高级系统设置-》环境变量-》'用户变量'底下的新建按钮

变量名:JAVA_HOME

变量值:JDK的安装路径,如果你在安装时修改了安装路径,按你实际的来

这里略微解释一下为什么我放在上面的用户变量而不是系统变量。

系统环境变量,对所有用户起作用,而用户环境变量只对当前用户起作用。

加在系统环境变量,可能要重启才会生效。而用户变量可以不用重启!我体验过!

添加完Java之家(JAVA_HOME)的环境变量之后,要在path的环境变量下添加"%JAVA_HOME%\bin",就是引用了我们刚刚定义的JAVA_HOME那个环境变量的值。

好像完事了呀!!!那。。怎么知道有没有安装成功呢?

四、验证是否安装成功

打开cmd命令行。这个都会吧???不会百度一下~

输入java -version

显示出了版本号就算安装成功啦~

为啥我要把HotSpot给框起来呢?这里就是区别你安装的是OpenJdk还是OracleJdk的标志。详细看下方科普!

科普

其实我在企业中的真实开发,有碰到过jdk小版本不兼容的问题,这里也跟大家分享一下。比如我同事使用的是jdk1.8.0_91,而我是jdk1.8.0_212。项目在他的电脑上可以正常运行,但是在我电脑上运行报错(可能这里你对这些还没有什么概念,后期会介绍编译异常和运行时异常)。

当时就觉得很奇怪,Java的版本更新应该是向前兼容的呀。。为什么91版本可以,212版本不行。后来一顿百度,发现是他是OpenJdk,而我是OracleJdk!

主要原因是我的OracleJdk不支持我那个项目的某些东西,导致我无法启动项目。但是大家不要惊慌,也不要去纠结是下载OracleJdk还是OpenJdk。

大兄弟,随便用就完事儿了嗷!

一般你碰不到这个问题,毕竟我那个是少数情况下发生的。

OpenJDK和OracleJDK有什么区别和联系?

科普贴:

https://blog.csdn.net/bisal/article/details/104832084/

讲的比较详细,包括了如何查看自己的版本是OpenJDK还是OracleJDK的方法。

Java入门到实践系列(2)——Java环境搭建的更多相关文章

  1. Java入门到实践系列(1)——Java简介

    一.Java的发展历史 Java是由SUN公司的开发人员James Gosling及其领导的一个开发小组与1995年开发并推出的一门高级编程语言.经过二十几年的发展已经成为最受程序员欢迎.使用最为普遍 ...

  2. 【转】RHadoop实践系列之一:Hadoop环境搭建

    RHadoop实践系列之一:Hadoop环境搭建 RHadoop实践系列文章,包含了R语言与Hadoop结合进行海量数据分析.Hadoop主要用来存储海量数据,R语言完成MapReduce 算法,用来 ...

  3. php从入门到放弃系列-01.php环境的搭建

    php从入门到放弃系列-01.php环境的搭建 一.为什么要学习php 1.php语言适用于中小型网站的快速开发: 2.并且有非常成熟的开源框架,例如yii,thinkphp等: 3.几乎全部的CMS ...

  4. MyBatis学习系列一之环境搭建

    目录 MyBatis学习系列一之环境搭建 MyBatis学习系列二——增删改查 MyBatis学习系列三——结合Spring 学习一个新的知识,首先做一个简单的例子使用一下,然后再逐步深入.MyBat ...

  5. Java入门之JDK的安装和环境变量的配置

    Java的版本 1. Java SEjava se 以前称为J2SE.它允许开发和部署在桌面.服务器.嵌入式环境和实时环境中使用的 Java 应用程序.Java SE是基础包,但是也包含了支持 Jav ...

  6. 【java开发】ubuntu常用命令及环境搭建

    学习第一天,今天内容相对简单,主要就是ubuntu一些常用命令及常规操作,后续涉及到环境的搭建,也会在本文再更. ubuntu环境搭建 第一种 也是最简单最方便的 通过vm虚拟机软件,下载iso镜像进 ...

  7. [Java] SSH框架笔记_框架分析+环境搭建+实例源码下载

    首先,SSH不是一个框架,而是多个框架(struts+spring+hibernate)的集成,是目前较流行的一种Web应用程序开源集成框架,用于构建灵活.易于扩展的多层Web应用程序. 集成SSH框 ...

  8. 基于Selenium2+Java的UI自动化(1) - 原理和环境搭建

    一.Selenium2的原理 Selenium1是thoughtworks公司的一个产品经理,为了解决重复烦躁的验收工作,写的一个自动化测试工具,其原理是用JS注入的方 式来模拟人工的操作,但是由于J ...

  9. 【Java探索道路安全系列:Java可扩展的安全架构】一间:Java可扩展的安全体系结构开始

    笔者:郭嘉 邮箱:allenwells@163.com 博客:http://blog.csdn.net/allenwells github:https://github.com/AllenWell [ ...

随机推荐

  1. bzoj4395[Usaco2015 dec]Switching on the Lights*

    bzoj4395[Usaco2015 dec]Switching on the Lights 题意: n*n个房间,奶牛初始在(1,1),且只能在亮的房间里活动.每当奶牛经过一个房间,就可以打开这个房 ...

  2. 从连接器组件看Tomcat的线程模型——BIO模式

    在高版本的Tomcat中,默认的模式都是使用NIO模式,在Tomcat 9中,BIO模式的实现Http11Protocol甚至都已经被删除了.但是了解BIO的工作机制以及其优缺点对学习其他模式有有帮助 ...

  3. GPO - Folder Mapping via GPO

    Create a Group Policy on AD DC Server. The GPO policy will come into effect on the next login, or us ...

  4. Mysql报Too many connections,不要乱用ulimit了,看看如何正确修改进程的最大文件数

    背景 今天在学习mysql时,看到一个案例,大体来说,就是客户端报Too many connections.但是,客户端的连接池,限制为了200,两个客户端java进程,那也才400,然后mysql配 ...

  5. View Animation 运行原理解析

    Android 平台目前提供了两大类动画,在 Android 3.0 之前,一大类是 View Animation,包括 Tween animation(补间动画),Frame animation(帧 ...

  6. iview实战 : 全屏去头去尾的弹窗

    <template> <Button @click="modal3 = true" >No title bar</Button> <Mod ...

  7. 微信扫码登陆js

    先贴一个微信开发文档教程 https://developers.weixin.qq.com/doc/oplatform/Website_App/WeChat_Login/Wechat_Login.ht ...

  8. Python对列表去重的各种方法

    一.循环去重   二.用 set() 去重 1.set()对list去重 2.list 是有序的,用 sort() 把顺序改回来  三.利用 dict 的属性来去重 1.用 dict 的 fromke ...

  9. python匿名函数和内置函数

    一.匿名函数 匿名函数定义lambda a,b,c:(x,y,z) a.b.c相当于形参,多个形参之间用逗号隔开,多个形参不能用括号括起来 (x.y.z)相当于返回值,多个返回值之间用逗号隔开,多个返 ...

  10. 「从零单排canal 06」 instance模块源码解析

    基于1.1.5-alpha版本,具体源码笔记可以参考我的github:https://github.com/saigu/JavaKnowledgeGraph/tree/master/code_read ...