【原创】Open JDK更换过程及更换后的问题总结与分析

由于2019年1月起Oracle对通用计算以外的应用场景开始收费,综合看来还是主要针对嵌入式的Java应用进行收费,毕竟嵌入式设备的数量是庞大的,可以有数亿元进账。

因Oracle JDK收费,各大公司也开始了从Oracle JDK更换到开源的Open JDK,对于开源JDK,有经过验证的zulu版本,也有原汁原味的Open版本。

zulu版本包含多种安装格式,有直接解压的zip包,也有msi安装文件,对于Linux和Mac OS,有tar包和dmg包可供选择。

我们知道安装JDK是要配置环境变量的,但不是所有的软件都需要Java Develoment Kit,即javac.exe,大部分其实用的是Java Run Time,即java.exe。

因为msi安装会写入注册表项,所以在Windows平台上,如果安装了zulu等开源JDK,并配置了JAVA_HOME及PATH环境变量,还提示未安装java,提示去Oracle网站下载,请安装msi格式,而不要使用zip解压方式。

虽然工作中一直使用Java语言及JDK,但大多数的小伙伴,对于标准的JAVA环境变量,还是配置的五花八门,虽然看起来都能正常运行和编写java程序,但实际上在更换jdk或升级jdk版本时,工作量就来了。

这里给出标准的参考:

  1. 首先环境变量分用户环境变量和系统环境变量,即Linux的user profile和system profile;

  2. 不管是配置用户级的还是系统级的,要知道用户环境变量会继承系统的环境变量;用户的环境变量只对自己有效,可以在不重启电脑的情况下生效,系统环境变量是对登录的每个用户都有效,当出现jdk版本冲突时,请检查是否设置了多重环境变量;

  3. 新建JAVA_HOME变量,指向JDK安装路径,指定到主目录即可,不需要指定到bin文件夹;例如C:\Program Files\Java\jdk-1.8.0_191,而不是C:\Program Files\Java\jdk-1.8.0_191\bin这个路径;

  4. 新建CLASSPATH变量,指向JDK安装路径下lib库里的dt.jar,以及JDK安装路径下jre\lib文件夹下的tools.jar和rt.jar,以及当前目录;总体即为CLASSPATH=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\jre\lib\rt.jar;%JAVA_HOME%\jre\lib\tools.jar; (Linux环境下将%JAVA_HOME%都修改为$JAVA_HOME)

  5. 更改Path环境变量,将%JAVA_HOME%\bin;添加到Path环境变量的最前端;

  6. 测试JAVA环境变量是否配置成功,请执行javac -version 和 java -version ;

  7. 项确定系统环境变量中是否配置了多个JDK,执行 where java.exe命令或where javac.exe ;(Linux下将where换成which即可)

  8. 测试所有涉及到Java的应用程序,因为Java分32位和64位,所以要确认清楚自己所装的JDK是否与自己需要用的开发环境所需一致;

如果某个应用需要更换JDK,需要先换运行环境的JDK,再换开发环境的JDK,最后用开发环境新JDK打包程序jar文件,再在运行环境中运行,保证最小化的差异验证原则;

原文地址:https://www.cnblogs.com/xiaoTT/p/9874110.html

时间: 2024-11-06 11:56:53

【原创】Open JDK更换过程及更换后的问题总结与分析的相关文章

linux ubuntu14.04下安装jdk的过程

首先去oracle官网上下载jdk,我下载的是jdk-8u51-linux-x64.tar.gz这个版本,官网上还有一个rpm 的文件,这个是红帽公司的一个安装版本,开始我下载了这个版本,然后在ubuntu中也安装了rpm,但是最后在安装这个rpm的jdk时,遇到很多错误,显示一排错误.然后就在官网上果断地下载了tar..gz文件.安装成功了,安装过程如下 我们下载的jdk-8u51-linux-x64.tar.gz文件,默认是在/ home/ranruilong/下载    这个文件夹下,这儿

nginx和Tomcat集成后发生的重定向问题分析和解决

nginx和Tomcat集成后发生的重定向问题分析和解决 Tomcat前端配置一个HTTP服务器应该是大部分应用的标配了,基本思路就是所有动态请求都反向代理给后端的Tomcat,HTTP服务器来处 理静态请求,包括图片.js.css.html以及xml等.这样可以让你的应用的负载能力提高很多,前端这个HTTP服务器主流用的最多的当属 Apache HTTP Server和nginx.今天这篇文章主要讲解的是这种组合的方式的前提下,后端的Tomcat中的app在301跳转的时候遇到的一个问题. 问

分页后的数据展示问题分析

一.重要参数rowNum和rowList 在使用jqGrid框架进行数据展示的时候.我们经常会用到初始化参数中的rowNum和rowList.一个表示展示的记录数,一个表示可选的展示记录数.具体参数请参考官方文档,http://blog.mn886.net/jqGrid/. 二.分页后的数据展示问题分析 一般情况下,当我们将查询条件所需的参数传递给后台,返回给jqGrid框架展示的数据就是我们经过后台处理需要得到的数据. 但是,当我们涉及到多表的数据获取和展示时,有一种情况会造成我们需要获取的数

更换手机号或者更换手机后QQ设备锁的设置问题

更换手机号 一步到位,更改密保手机号,OK了 更换手机 老卡插入 登录QQ,OK了 更换手机号和手机 老卡插入新手机 登录QQ 新卡插入新手机 更改密保手机号,OK了

JavaScript基础 显示/隐藏效果 点击图片,DIV显示,图片更换,点击更换后的图片,DIV隐藏

镇场诗: 清心感悟智慧语,不着世间名与利.学水处下纳百川,舍尽贡高我慢意. 学有小成返哺根,愿铸一良心博客.诚心于此写经验,愿见文者得启发.------------------------------------------ code: <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"

更换jdk版本:jdk1.8更换为jdk1.7之后输入java -version还是出现1.8的版本号

安装了1.7之后修改了JAVA_HOME的环境变量 修改成功之后,在cmd输入java -verson还是出现1.8的版本号 解决办法:将环境变量Path中的%JAVA_HOME%/bin 移到最前面,即可解决. 因为安装Oracle之类的带有jdk的软件时,会自动在Path里最前面写入一段jdk路径的变量值,我这里的Oracle指向的jdk就是1.8版本的jdk,在cmd输入java -version还是显示1.8的版本号.

CentOS7下安装JDK详细过程

第一步 卸载系统自带的OpenJDK以及相关的java文件 1.在命令窗口键入:rpm -qa | grep java 命令说明: rpm 管理套件 -qa 使用询问模式,查询所有套件 grep 查找文件里符合条件的字符串 java 查找包含java字符串的文件 2.删除原有java文件,在命令窗口键入: rpm -e --nodeps java-1.7.0-openjdk-1.7.0.111-2.6.7.8.el7.x86_64 rpm -e --nodeps java-1.8.0-openj

Windows Server 2008R2安装WEB服务器详细过程+安装完成后添加角色服务

一.Windows Server 2008R2安装WEB服务器详细过程1.进入系统 打开服务器管理器:在角色选项卡下点击添加角色2.弹出 添加角色向导 点击下一步3.勾上WEB服务器(IIS) 点击下一步4.根据自己所需要的服务勾选 点击安装安装进度条5.安装完成二.安装完成后添加角色服务1.点击角色,找到角色服务 点击添加角色服务2.选择角色服务弹出安装此角色.还需安装几个默认的配套服务 点击添加所需的角色服务安装的进度条安装完成 原文地址:https://blog.51cto.com/144

【Linux】CentOS7下安装JDK详细过程

Linux上一般会安装Open JDK,关于OpenJDK和JDK的区别:http://www.cnblogs.com/sxdcgaq8080/p/7487369.html 下面开始安装步骤: --------------------------------------------------------------------------第一步----------------------------------------------------------------------- 第一步