OracleJDK的下载安装与设置

打印 上一主题 下一主题

主题 851|帖子 851|积分 2553

1、JDK版本与商用协议

JDK 版本BCL 协议(商用免费)OTN 协议(商用收费)NFTC 协议(商用免费)1.1√1.2√1.3√1.4√5√6√7√88u202 及之前的版本8u211 及之后的版本9√10√11√12√13√14√15√16√17√18√19√20√21√22√如上表所示,OracleJDK 主要有三种许可协议:

  • BCL 协议:Oracle Binary Code License Agreement
  • OTN 协议:Oracle Technology Network License Agreement
  • NFTC 协议:Oracle No-Fee Terms and Conditions License
其中,OTN 协议是商用收费的,因此下载使用时,需注意版本协议。
提示:OracleJDK 是 OpenJDK 比较知名权势巨子的发行版,但因其收费模式比较复杂多变,以是越来越多的公司开始接纳  OpenJDK 的其他发行版。目前,Java 知名社区 Spring 官方推荐的 OpenJDK 发行版为 Liberica JDK
2、下载JDK


如上图所示,进入 Oracle 官网 JDK 的下载地点:https://www.oracle.com/java/technologies/downloads/archive/

如上图所示,本文以目前还比较盛行的 JDK 8 为例,分别下载 64 位(Linux 和 Windows)操作系统的 JDK 安装包。
注意:本文下载的 JDK 8 版本是 8u202 ,属于 BCL(Oracle Binary Code License Agreement)协议,可以免费商用,也是 OracleJDK 8 最后一个可以免费商用的版本。
3、安装与设置

3.1、Windows

3.1.1、启动安装包


如上图所示,双击启动 JDK 安装包。
3.1.2、答应安装包更改设备


3.1.3、开始安装向导


3.1.4、设置JDK安装路径


如上图所示,本文使用默认的安装路径。
3.1.5、等候JDK安装进度


3.1.6、同意许可条款


3.1.7、设置JRE安装路径


如上图所示,本文使用默认的安装路径。
3.1.8、等候JRE安装进度


3.1.9、完成安装


3.1.10、检察安装版本及路径

  1. java -version
复制代码
  1. where java
复制代码
3.1.11、设置环境变量


如上图所示,诸如 Tomcat 等软件一般会通过 JAVA_HOME 或 JRE_HOME 环境变量来访问使用 JDK 。
Neither the JAVA_HOME nor the JRE_HOME environment variable is defined
At least one of these environment variable is needed to run this program
因此在安装完 JDK 后,还需要设置环境变量。

如上图所示,通过“设置”->“关于”->“高级系统设置”->“环境变量”,打开环境变量的编辑面板。

如上图所示,新建一个系统变量,变量名为 JAVA_HOME ,变量值为 JDK 的安装路径。

如上图所示,编辑“Path”系统变量,新建一个条目,引入刚创建的“JAVA_HOME”系统变量的“bin”目录。
  1. %JAVA_HOME%\bin
复制代码

如上图所示,处剖析影响“%JAVA_HOME%\bin”生效的条目。
在安装 JDK 时,会自动将 java.exe、javaw.exe、javaws.exe 三个可执行文件复制到 C:\Program Files (x86)\Common Files\Oracle\Java\javapath 目录,并自动将该目录路径新增到 Path 系统变量的第一个条目。
这也是在 JDK 安装完成后,还没有设置环境变量,就能成功执行“java -version”的原因。
假如我们只安装使用一个版本的 JDK ,这个环境变量条目一般是不会导致什么问题的。
但实际上,我们可能会安装使用多个版本的 JDK ;这时 C:\Program Files (x86)\Common Files\Oracle\Java\javapath 目录存放的是最后安装的 JDK 版本的文件。
由于这个环境变量条目,在“%JAVA_HOME%\bin”环境变量条目的前面;以是即使将“JAVA_HOME”的系统变量值切换到了其他 JDK 版本的安装路径,在执行“java”相关命令时,也还是会使用到最后安装的 JDK 版本的 java.exe 程序,而不是“%JAVA_HOME%\bin”所指向的 java.exe 程序。
因此,在手动设置环境变量时,最好还是处理掉这个条目;可以直接删除,也可以像本文这样在前面添加“bak”让其失效。

如上图所示,JAVA_HOME 系统变量已设置成功,java 命令也是用“%JAVA_HOME%\bin”所指向的 java.exe 程序。
  1. where java
复制代码
  1. echo %JAVA_HOME%
复制代码
3.2、Linux

3.2.1、解压JDK安装包


  1. tar -zxvf jdk安装包名称
复制代码
3.2.2、创建java目录并移动


如上图所示,在 /usr/local/ 目录下,创建一个 java 目录;并将解压 JDK 安装包后得到的 JDK 目录,移动到新创建的 /usr/local/java 目录中。
  1. mkdir /usr/local/java
复制代码
  1. mv 解压后的jdk目录 /usr/local/java/
复制代码
提示: 在 Linux 操作系统中,自定义安装的第三方软件,一般安装在 /usr/local/ 目录下。
3.2.3、设置环境变量


如上图所示,在 /etc/profile.d/ 目录下,新建一个 java.sh 文件来设置 Java 的环境变量。
  1. vi /etc/profile.d/java.sh
复制代码
提示:有不少教程是通过直接使用 /etc/profile 文件来设置 Java 环境变量的,实际上 /etc/profile 文件会自动加载 /etc/profile.d/*.sh 文件中的设置(用户需要具有 /etc/profile.d/*.sh 文件的 r 权限)。
因此,基于模块化的原则,在 /etc/profile.d/ 目录下新建一个 .sh 扩展名文件来设置 Java 环境变量的做法会更加合适。

如上图所示,在 /etc/profile.d/java.sh 文件中设置 JAVA_HOME、JRE_HOME 和 PATH 三个变量;并使用 export 命令将这三个自定义变量转换成环境变量。
  1. # set java environment
  2. JAVA_HOME=/usr/local/java/解压后的jdk目录
  3. JRE_HOME=$JAVA_HOME/jre
  4. PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
  5. export JAVA_HOME JRE_HOME PATH
复制代码
提示:不少教程还会设置 CLASSPATH 变量,实际上在 JDK 1.5 之后的版本就不再需要设置 CLASSPATH 变量。
CLASSPATH=.JAVA_HOME/lib/dt.jarJAVA_HOME/lib/tools.jarJRE_HOME/lib
3.2.4、使环境变量设置立即生效


如上图所示,使用 source 命令加载 /etc/profile 环境设置文件,让(Java)环境变量设置立即生效。
  1. source /etc/profile
复制代码
提示:只有在用户输入账号暗码登录进入 Linux 系统时,才会为该用户自动加载 /etc/profile 环境设置文件。假如不想退出重新登录,可以使用  source 命令手动加载让其立即生效。
3.2.5、检察安装版本及路径

  1. java -version
复制代码
  1. which java
复制代码
本文参考

【1】【大文Code条记】【JDK17收费?一文带你搞清楚JDK各个版本收费情况】【知乎】【2023-12-19】
【2】【闷瓜蛋子】【Oracle怎样对JDK收费】【知乎】【2019-06-18】
【3】【bruce】【JDK 发行版本选择(Open JDK VS Oracle JDK VS 其他发行版本)】【知乎】【2023-07-11】
【4】【旋转的木驴儿】【OpenJDK 和 OracleJDK 哪个jdk更好更稳定,正式项目用哪个呢?】【知乎】【2024-07-01】
【5】【Glavo】【OpenJDK 和 OracleJDK 哪个jdk更好更稳定,正式项目用哪个呢?】【知乎】【2020-06-19】
【6】【nostmabole】【OPEN JDK常用发行版和下载方式】【知乎】【2024-05-24】
【7】【51CTO技能栈】【Java 许可再变更!Oracle将于今年9月“调解”Oracle JDK 17,用户:不如迁移到替代方案】【微信公众号】【2024-07-31】
【8】【极客星云】【开源Open JDK哪家强?Oracle JDK替代办理方案盘货】【CSDN】【2023-11-06 】
【9】【icqcqi】【已办理:Java环境变量设置后不生效】【CSDN】【2022-11-07】
【10】【酸奶加绿茶】【Linux下JDK到底应该安装在哪儿?】【博客园】【2017-06-04】
【11】【佚名】【【干货】linux 安装jdk,【收藏】linux 安装jdk】【知乎】【2021-12-27】
【12】【二境志】【Java开发环境不再需要设置classpath】【知乎】【2019-05-23】

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

八卦阵

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表