1. 官网https://www.oracle.com/java/technologies/javase-downloads.html下载某个版本的jdk eg:jdk-8u131-windows-x64.exe
2.解压到一个路径下解压缩软件解压到E:\jdk-8u131-windows-x64\
Win+R
->cmd
打开命令行
3.cmd中的操作
cd /d E:\jdk-8u131-windows-x64\.rsrc\1033\JAVA_CAB10
extrac32.exe 111
:: 此时解压出 tools.zip 文件
:: 打开当前文件夹
explorer.exe .
:: 将tools.zip 用解压软件解压到当前文件夹,e.g. `E:\jdk-8u131-windows-x64\.rsrc\1033\JAVA_CAB10\tools`
:: 将 .pack文件改成.jar文件
cd tools
for /r %x in (*.pack) do .\bin\unpack200 -r "%x" "%~dx%~px%~nx.jar"
:: 解压 src.zip 如果不需要源码 src.zip 可忽略此步
cd ..\..\JAVA_CAB9
extrac32 110
:: 将src.zip移动到tools文件夹
move src.zip ..\JAVA_CAB10\tools\
:: 将tools文件夹里的内容复制到指定目录,e.g. D:\jdk
xcopy /s /e /i /y E:\jdk-8u131-windows-x64\.rsrc\1033\JAVA_CAB10\tools d:\jdk
:: 删除 E:\jdk-8u131-windows-x64 文件夹
cd / && rd /s /q E:\jdk-8u131-windows-x64
4.设置环境变量
配置好这三个环境变量即可;
5.测试 cmd ; -> java -version
Linux免安装的办法:
# 下载文件
$ wget -P ~/downloads --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u121-b13/e9e7ea248e2c4826b92b3f075a80e441/jdk-8u121-linux-x64.tar.gz
# 解压
$ sudo tar zxf ~/downloads/jdk-*.tar.gz -C /usr/local/
#创建软连接
$ sudo ln -sf /usr/local/jdk1.8.0_121 /usr/local/jdk
$ sudo vi /etc/profile
#设置java环境
export JAVA_HOME=/usr/local/jdk
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar;:$JAVA_HOME/lib/tools.jar:$CLASSPATH
export PATH=$JAVA_HOME/bin:$PATH
#保存并退出
#使配置生效
$ source /etc/profile
/JDK文件夹中的作用///
1.bin目录:
用于存放一些可执行程序,如:java.exe(Java编译器),java.exe(Java运行工具),jar.exe(打包工具)和javadoc.exe(文档生成工具)。
在JDK的bin目录下存放着很多可执行程序,其中最为重要的就是Java.exe和javac.exe。
javac.exe:是Java编译器工具,它可以将编写好的Java文件编译成Java字节码文件(可执行的Java程序)。java源文件的扩展名为".java",如“hello.java”。编译后生成对应的字节码文件,文件的扩展名为.class。(*.class是二进制文件,中间文件,给IVM来阅读)
Java.exe:是java运行工具,他会启动一个java虚拟机(JVM)进程,Java虚拟机相当于一个虚拟的操作系统,他们专门负责运行由Java编译器生成的字节码文件(.class文件)。JVM将*.class 文件翻译为底层操作系统字节码,可运行。
java是一门半编译半解释型语言。且具有移植性。
2.db目录:db目录是一个小型的数据库。从JDK6.0引入。是一个纯java实现、开源的数据库管理系统。在学习JDBC时,不需要额外的安装一个数据库软件,选择直接使用的javaDB即可。
3.jre目录:“jre”是“Java Runtime Environment”的缩写,意为“Java运行时环境”。此目录是Java运行时环境的根目录,它包含Java虚拟机,运行时的类包,Java运行启动器以及一个bin目录,但不包含开发环境中的开发工具。
4.include目录:由于JDK是通过C和C++实现的,因此在启动时需要引入一些C语言的头文件,该目录就是用于存放这些头文件的。
5.lib目录:是“library”的缩写,意为Java类库和库文件,是开发工具使用的归档包文件。
6.src.zip:是src的压缩文件,src中放置的是JDK核心类的源代码,通过该文件可以查看Java基础类的源代码。