从Oracle Java 8更新为采用OpenJDK

如何解决从Oracle Java 8更新为采用OpenJDK

我想从Oracle Java更新为采用OpenJDK。 因此,在开始更新之前,我有一些疑问:

有关我使用的应用程序的一些信息:

  1. 2个应用程序
  2. 应用程序1使用Java 8
  3. 应用程序2使用Java 11

我的问题:

  1. 从oracle Java 8更新到AdoptOpenJDK 8是否存在任何已知问题?
  2. 从oracle Java 11更新到采用OpenJDK 11是否存在任何已知问题?
  3. 是否甚至可以在Java 11上运行Java 8应用程序? (我可以在两个应用程序中都使用Adopt OpenJDK 11吗?)
  4. 是否有从Oracle更新为采用的准则? (或者只是向前冲?)

最诚挚的问候

解决方法

对于给定的Java版本(自Java 8开始),各种商业支持的OpenJDK构建几乎都是Oracle JDK的直接替代。

如果使用GUI编写应用程序,则会发现字体和颜色配置文件中的一些差异。 Oracle JDK还对Java Flight Recorder提供了更好的支持(如果有人使用的话)。 OpenJDK对古老的Java Web Start几乎没有支持,但是有替代方法。

根据我的经验(几乎全部在中间件中),选择JDK(对于给定版本)几乎总是由支持决定的,而很少涉及功能。从Oracle JDK迁移到OpenJDK时,我很少遇到任何技术问题,反之亦然。

使用Java 11和更高版本运行Java 8应用程序时,我也没有发现任何问题。但是,Java 11将几个组件(也是与GUI应用程序最相关)分离为单独的JAR。

但是,最后,这全都是测试问题,不是吗?如果您的测试足够彻底,则兼容性方面的所有问题都将被清除。在没有进行全面测试的情况下,我当然不会依赖任何人的向后兼容性声明。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?
Java在半透明框架/面板/组件上重新绘画。
Java“ Class.forName()”和“ Class.forName()。newInstance()”之间有什么区别?
在此环境中不提供编译器。也许是在JRE而不是JDK上运行?
Java用相同的方法在一个类中实现两个接口。哪种接口方法被覆盖?
Java 什么是Runtime.getRuntime()。totalMemory()和freeMemory()?
java.library.path中的java.lang.UnsatisfiedLinkError否*****。dll
JavaFX“位置是必需的。” 即使在同一包装中
Java 导入两个具有相同名称的类。怎么处理?
Java 是否应该在HttpServletResponse.getOutputStream()/。getWriter()上调用.close()?
Java RegEx元字符(。)和普通点?