前言

双十一买了台新的笔记本,需要重新安装下Java,这里记录下安装的过程,毕竟万事开头难,就算是老手也不一定能一次就把Java安装成功。

安装jdk

作为一名Java开发,当然是要安装jdk了,如果只是需要Java的运行环境,那么安装jre就足够了。另外说下,jdk里以及包含了jre了。

首先去官网下载Java,由于Sun被Oracle收购了,现在去官网下载Java需要先注册一个Oracle账号,虽然麻烦了点,但是没办法,谁叫Oracle牛逼呢。

由于页面是全英文的,部分同学可能会懵逼,其实没什么,随便找一个版本下载就行。唯一需要注意的是,下载文件之前要先点击一下文件上方的同意协议,否则会提示你还没有同意协议。

接着把下载好的文件启动,一路按照默认配置安装即可。当安装好jdk后,接下来的步骤就是配置环境变量了。不夸张的说,99%的同学都曾经倒在了环境变量的配置上,甚至直接就放弃安装Java了。

配置环境变量

环境变量其实就是定义给系统使用的变量,当使用到这些变量时,会自动替换成对应的路径名,以便找到程序或者命令。而环境变量分为用户变量和系统变量,顾名思义,用户变量是给当前的电脑用户使用的,系统变量是所有用户公用的。我们只要配置成用户变量就行,如果你想定义成系统变量也没问题。

配置Java的环境变量其实很简单,一共就三个环境变量:

  • JAVA_HOME
  • PATH
  • CLASSPATH

注意,所有环境变量的变量值都是使用的英文符号!!别写成中文的分号、冒号等符号了!!

JAVA_HOME

这个变量名指的是Java的安装路径,其实很多程序在安装的时候,都会自动给你新建一个对应的环境变量XXX_HOME。不过Java并没有自动给我们新建该变量,所以需要我们自己来创建。另外很多程序,比如Eclipse、Maven、Tomcat等等,都会使用到这个变量。

新建一个环境变量JAVA_HOME,然后在变量值里输入你的jdk安装路径,比如我的是C:\Program Files\Java\jdk1.7.0_80

PATH

这个变量是系统本身就有的,当你在cmd窗口里执行命令的时候就会去这个PATH变量里找到对应的路径,如果找不到就会报错。这一步我们需要在PATH的变量值里加上%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin最好是将这段变量值加在最前面,如果是加在最前面,还需要在末尾加上英文的分号

CLASSPATH

这个变量需要我们新建,变量名是CLASSPATH,变量值是.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar,请别在变量值的末尾画蛇添足加上分号。

该变量的作用是用来寻找类文件的路径,如果该变量值不对,就会导致javac命令找不到的错误。

测试jdk和环境变量

java -version

win+R打开运行程序,输入cmd接着回车,在cmd窗口里输入java -version,正常的情况是能得到类似如下的信息:

C:\Users\Lewis>java -version
java version "1.7.0_80"
Java(TM) SE Runtime Environment (build 1.7.0_80-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.80-b11, mixed mode)

javac -version

在cmd窗口里输入javac -version,正常的情况是能得到类似如下的信息:

C:\Users\Lewis>javac -version
javac 1.7.0_80

这两个命令的区别是,前者是用来执行java程序或者命令的,后者是用来编译java文件的。javac就是指的java compiler。

win10下的环境变量问题

如果是win10,在配置环境变量时,一般是弹出表格,然后一行一行地输入变量值,而不是像上边那样需要使用英文分号来分隔开。有可能会发生配置好环境变量后,在输入java -version能得到正常的结果,而在输入javac -version后却是显示的:

C:\Users\Lewis>javac -version
'javac' 不是内部或外部命令,也不是可运行的程序
或批处理文件。

解决办法很简单,先检查你的JAVA_HOME是否路径正确,是否使用了错误的中文符号等;接着检查另外两个变量是否书写正确。因为win10第一次配置环境变量时是一行一行地在表格里输入的,后面重新打开的时候就变回了win7/8那种格式,你会发现CLASSPATH变量的变量值莫名被加上了双引号(我本人就是属于这种情况),把双引号去掉后重新保存环境变量;接着关闭原本的cmd窗口,重新打开cmd窗口进行测试,测试成功。

如果依然是一行一行输入变量值的表格形式,需要把分号去掉,然后分成多行各自输入,且末尾不能有英文分号,另外最好把变量值上移到顶端。

注意,如果改变了环境变量,必须要把原本的cmd窗口关掉才行,因为原本的cmd窗口依然使用的是你修改之前的环境变量。

参考链接

Java - 安装jdk并设置环境变量的更多相关文章

  1. InstallShield安装jdk并设置环境变量

    1. 检查是否安装jdk function OnBegin() begin Disable (BACKBUTTON); if(!MAINTENANCE)then SdLicense2 ("L ...

  2. linux安装jdk并设置环境变量(看这一篇文章即可)

    1.查看linux位数 查看linux是32位还是64位,影响需要下载JDK的版本   系统位数 jdk位数 x86(32位) 32位 x86_64(64位) 32位 64位 在linux命令输入: ...

  3. 第一次尝试学习java 安装jdk 与配置环境变量 写第一个java程序 并运行

    第一次学习java,今天知道了java之父叫  詹姆斯.高司令 其它的记不住太多,首先我们先来安装jdk 百度搜索jdk12   (现在的jdk为12版本)安装稳定版 找到javaSE12X..  下 ...

  4. linux下安装jdk并设置环境变量

      首先去官网下载jdk安装包 我这里下载的是jdk7,因为jdk8之后做了很大的改动,所以现在常用的还是jdk7.下载地址:www.oracle.com/technetwork/cn/java/ja ...

  5. linux查看java jdk jre安装路径和设置环境变量

    一. 查看java jdk安装路径和设置环境变量 windows: set java_home:查看JDK安装路径 java -version:查看JDK版本 linux: whereis java ...

  6. Java入门——在Linux环境下安装JDK并配置环境变量

    Java入门——在Linux环境下安装JDK并配置环境变量 摘要:本文主要说明在Linux环境下JDK的安装,以及安装完成之后环境变量的配置. 使用已下载的压缩包进行安装 下载并解压 在Java的官网 ...

  7. window 远程在Linux(centOS7.0)上安装JDK以及配置环境变量

    本人是在windows 7 上安装了虚拟机,虚拟机安装的是linux(centOS7.0)系统现在在Windows 上安装SecureCRT 远程虚拟机的linux系统,安装JDK以及配置环境变量. ...

  8. 安装JDK并配置环境变量以及Hello World

    摘要:本文主要说明在Windows环境下JDK的安装,以及安装完成之后环境变量的配置,并通过DOS运行简单的Java程序. 安装JDK 说明 SDK:软件开发工具包(Software Developm ...

  9. Linux环境下安装JDK并配置环境变量

    首先查看是否已经安装了JDK并配置环境变量. [root@dhcc_plat opt]# java -version -bash: java: command not found [root@dhcc ...

随机推荐

  1. socket基本使用

    UDP发送和接收 MainRecv.cpp #include <iostream> #include <WinSock2.h> #include <sstream> ...

  2. [数据挖掘课程笔记]SLIQ算法

    1.数据结构 主要的数据结构有:1.Attribute List  2.Class List 对于数据集,每一个属性都有一个对应的Attribute List.如上图所示,每个Attribute Li ...

  3. linux shell执行远程计算机上的命令或者脚本(ssh)

    大数据平台下经常建立设计多个节点的集群需要统一部署,这就设计到守护进程或者部署脚本在不同节点执行,如果能在master机器上,统一执行脚本,一次性启动整个集群的服务,感觉很nice.因为,分享如下内容 ...

  4. 关于mybatis的学习笔记

    配置文件 贴出mybatis的配置文件,这里mybatis还未与spring做整合: <?xml version="1.0" encoding="UTF-8&quo ...

  5. SCAU 还有两个东西 —— 异或

    竞赛题 F  还有两个东西 Time Limit:400MS  Memory Limit:65535K 题型: 编程题   语言: 无限制 描述 给出n( n >= 2 )个整数,其中有 2 个 ...

  6. 近期测试BUG总结

    前些日子上线了新版的app,在上线后发现了几个重大的bug,在此总结,在以后的测试工作中需要额外的关注. 需求流程bug 页面刷新bug 标签栏刷新bug 第一个bug出现的原因是产品需求与运营实际操 ...

  7. atexit函数详解

    对C语言有所了解的人都知道main函数是整个程序的入口,但是其实不然,在内核中可以使用链接器来设置程序的开始地方.当内核使⽤⼀个exec函数执⾏C程序时,在调⽤main函数之前先调⽤⼀个特殊的启动例程 ...

  8. MSD3393/MSD3463 屏参及REG对照表

    概述:TIMMING组成 MOD: BANK:0x1032 VOP: SC_BK10 注意BANK对应: VOP: SC_BK10 例如:MS_U16 m_wPanelHTotal;   Sub VO ...

  9. JS获取元素的offsetTop,offsetLeft等相关属性

    1. obj.clientWidth //获取元素的宽度 obj.clientHeight //元素的高度 obj.offsetLeft //元素相对于父元素的left obj.offsetTop / ...

  10. 极客时间_Vue开发实战_06.Vue组件的核心概念(2):事件

    06.Vue组件的核心概念(2):事件 通过emit传递给父组件 我们点击了重置失败,上层的div的click=handleDivClick是接收不到.重置失败的点击的行为的 通常情况下,你不用.st ...