1 JDK 简介
JDK是Java语言的软件开发环境。全称Java Development Kit(java开发工具包)。包括用于开发Java小程序和应用程序的 JVM(java虚拟机),编译器,调试器,JRE(java runtime environment,java运行环境)和其他工具。JDK按照版本主要分为ME版本,SE版本和EE版本,其中ME版本为微型版,主要用于移动设备和嵌入式设备上(如手机,PDA,电视机顶盒、打印机等)的java开发。SE版本为标准版。EE版本为企业版。企业版的部分版本需要付费,其上集成了更多用于企业应用开发的工具包和其他类库。SE版本另有与其对应版本的完全开源的OpenJDK。
2 下载正确的 JDK 安装包
2.1 JDK版本术语
参照下表
JDK术语 | ||
---|---|---|
术语名 | 缩写 | 解释 |
Java Development Kit(Java 开发工具包) | JDK | 编写Java程序的程序员使用的软件 |
Java Runtime Environment(Java运行时环境) | JRE | 运行Java程序的用户使用的软件 |
Server JRE(服务器JRE) | - | 在服务器上运行Java程序的软件 |
Standard Edition(标准版) | SE | 用于桌面或简单服务器应用的Java平台 |
Enterprise Edition(企业版) | EE | 用于复杂服务器应用的Java平台 |
Micro Edition(微型版) | ME | 用于小型设备的Java平台 |
Java FX | - | 用于图形化用户界面的一个备选工具包,在Java11之前的某些Java SE 发布版中有提供 |
OpenJDK | - | Java SE 的一个免费开源实现 |
Java2 | J2 | 一个过时的术语,用于描述1998-2006年之间的Java版本 |
Software Development Kit(软件开发工具包) | SDK | 一个过时的术语,用于描述1998-2006年之间的Java版本 |
Update | u | Oracle公司的术语,标识Java8之前的bug修正版本 |
NetBeans | - | Oracle公司的集成开发环境 |
表2.1.1 JDK术语
2.2 JDK的组成部分及文件夹释义
图2.2.1 JDK组成图示
JDK包含的基本组件包括(以当前最新版本JDK 15为准):
- jaotc -Java静态编译器,为已编译的Java方法生成本机代码
- jar-为类和资源创建档案,并从档案中操作或还原单个类或资源
- jarsigner-签名并验证Java归档(JAR)文件
- java-启动Java应用程序
- javac-读取Java类和接口定义,并将其编译为字节码和类文件
- javadoc-从Java源文件生成API文档的HTML页面
- javap-反汇编一个或多个类文件
- jcmd-将诊断命令请求发送到正在运行的Java虚拟机(JVM)
- jconsole-启动图形控制台以监视和管理Java应用程序
- jdb-查找并修复Java平台程序中的错误
- jdeprscan-静态分析工具,它扫描jar文件(或其他一些类文件的聚合)以使用不赞成使用的API元素
- jdeps-启动Java类依赖分析器
- jfr-解析和打印Flight Recorder文件
- jhsdb-附加到Java进程或启动事后调试器以分析崩溃的Java虚拟机(JVM)中核心转储的内容
- jinfo-为指定的Java进程生成Java配置信息
- jlink-将一组模块及其依赖性组装并优化到一个自定义运行时映像中
- jmap-打印指定进程的详细信息
- jmod-创建JMOD文件并列出现有JMOD文件的内容
- jpackage-打包一个自包含的Java应用程序
- jps-列出目标系统上已检测的JVM
- jrunscript-运行支持交互式和批处理模式的命令行脚本外壳
- jshell-以读取-评估-打印循环(REPL)交互方式评估Java编程语言的声明,语句和表达式
- jstack-为指定的Java进程打印Java线程的Java堆栈跟踪
- jstat-监视JVM统计信息
- jstatd-监视已安装的Java HotSpot VM的创建和终止
- keytool-管理加密密钥,X.509证书链和受信任证书的密钥库(数据库)
- rmid-启动激活系统守护程序,该守护程序允许在Java虚拟机(JVM)中注册和激活对象
- rmiregistry-在当前主机的指定端口上创建并启动远程对象注册表
- serialver-以适合复制到正在演变的类中的形式为一个或多个类返回“ serialVersionUID”
这些工具可以在 %JAVA_HOME%/bin
目录中找到。如常用于安装后验证的java 和 javac
2.2.1 JDK安装目录说明
图2.2.1.1 JDK15安装目录
上图为JDK15.0在windows中的安装目录。其每个目录的说明如下(建议下载一个安装包查看):
- bin 用于存放java的可执行文件,包含java,javadoc文档工具,javac编译器等,其中 bin/server 目录下存放了 jvm.dll 文件,也就是我们的虚拟机。
- bin/server
- conf 用于存放JDK相关的配置文件
- include 支持使用java本机接口和java虚拟机调试器接口进行本地代码编程的C语言头文件。
- jmods 用于存放java的模块文件
- legal 用于存放java模块文件的许可文件
- lib 存放了java程序运行时的依赖文件
2.2.2 关于JRE
在java11以前,安装jdk后会在安装目录中有一个jre目录,同时安装程序会询问你是否安装一个公共的jre。两个jre的区别是安装目录下的jre用于为jdk组件提供运行环境, 而公共jre是支持其他java程序在本地上运行的公共环境。也就是说,如果你不需要使用java进行开发,仅仅要使用java程序,只需要安装jre即可。
上述目录中并不存在jre目录,因为在java11以后,jdk组件已经不需要jre运行环境也可以运行了。而通用的jre环境需要手动安装。考虑到以前的完整版jre较大,oracle对jre的内容进行了模块划分,并以.jmod文件存储在安装目录下的jmods目录中,用户根据自己的需要使用jlink安装特定的jre环境即可。
图2.2.2.1 jlink命令的官方说明
如下在windows环境中创建jre
- 以管理员身份打开 命令行管理器 CMD
- 按照格式
jlink
[ options ]--module-path
modulepath--add-modules
模块[,module …] 键入如下命令
C:\Program Files\Java\jdk-15.0.2
bin\jlink.exe --module-path jmods --add-modules java.base,java.desktop --output jre
即可生成指定内容的jre
在此例中引入了java.base和java.desktop两个模块
图2.2.2.2 jre生成图示
3 安装和配置
3.1 Windos
官网(https://www.oracle.com/java/technologies/javase-downloads.html)下载基于windows操作系统的指定版本的jdk,以java15为例,
执行安装文件 jdk-15.0.2_windows-x64_bin.exe完成安装
jdk 15 会默认在 C:\Program Files\Common Files\Oracle\Java 路径下创建javapath创建链接目录,并把常用的javac,java等工具放入到该目录中,同时在系统环境的path变量中添加相应的路径配置,也就是说如果你不需要使用其他java工具,到此便完成安装。
也可以手动完成配置。如下所示:
打开控制面板 -》 搜索框输入 path -》 点击编辑系统环境变量
点击环境变量
新建环境变量
然后编辑Path
变量,输入
%JAVA_HOME%\bin;
注:
- 注意最后的分号,windows环境变量用分号分隔。
- 如安装了多个jdk,如安装了jdk1.8 又安装了15.0 ,那么使用命令行输入 java -version时,系统将查找环境变量PATH变量,首先匹配到的将被执行。也就是在path变量靠前的jdk将生效。注意这个规则来配置你的jdk。
随后打开命令行工具 输入 java -version 验证安装
如上,即完成安装。
3.2 Linux
下载 jdk-15.0.2_linux-x64_bin.tar.gz
登录服务器上传压缩包并解压缩。
[root@VM-0-10-centos root]# cd /data/packages/
[root@VM-0-10-centos packages]# tar -zxvf jdk-15.0.2_linux-x64_bin.tar.gz -C /usr/local/
[root@VM-0-10-centos packages]# cd /usr/local/jdk-15.0.2/
[root@VM-0-10-centos jdk-15.0.2]# ll
total 32
drwxr-xr-x 2 root root 4096 Mar 12 17:43 bin
drwxr-xr-x 5 root root 4096 Mar 12 17:43 conf
drwxr-xr-x 3 root root 4096 Mar 12 17:43 include
drwxr-xr-x 2 root root 4096 Mar 12 17:43 jmods
drwxr-xr-x 71 root root 4096 Mar 12 17:43 legal
drwxr-xr-x 5 root root 4096 Mar 12 17:43 lib
drwxr-xr-x 3 root root 4096 Mar 12 17:43 man
-rw-r--r-- 1 10668 10668 1204 Dec 8 04:14 release
[root@VM-0-10-centos jdk-15.0.2]#
然后修改系统配置文件 vim /etc/profile
在文档末尾配置如下内容跟
export JAVA_HOME=/usr/local/jdk-15.0.2
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib
重新加载配置文件 source /etc/profile
键入 java -version检验是否安装成功
[root@VM-0-10-centos jdk-15.0.2]# java -version
java version "15.0.2" 2021-01-19
Java(TM) SE Runtime Environment (build 15.0.2+7-27)
Java HotSpot(TM) 64-Bit Server VM (build 15.0.2+7-27, mixed mode, sharing)
[root@VM-0-10-centos jdk-15.0.2]# javac -version
javac 15.0.2
如上所示,安装完成
本文结束,谢谢观看。