【发布时间】:2020-12-21 05:58:17
【问题描述】:
我的 ubuntu 18.04 系统中安装了 JDK 8,现在我想使用 this 将其升级到 JDK 11。我只想知道这是否会产生任何问题。升级时是否会删除旧版本(实际上我希望自己删除旧版本)?
【问题讨论】:
我的 ubuntu 18.04 系统中安装了 JDK 8,现在我想使用 this 将其升级到 JDK 11。我只想知道这是否会产生任何问题。升级时是否会删除旧版本(实际上我希望自己删除旧版本)?
【问题讨论】:
这样做可以在 Ubuntu 上卸载以前版本的 openJDK
sudo apt-get remove openjdk
删除所有配置文件和依赖项。
sudo apt-get purge --auto-remove openjdk*
然后安装openJDK 11
sudo apt-get install openjdk-11-jdk
【讨论】:
升级通常允许为 Java 8 编译的代码运行;但是,有一些警告。
Project JigSaw 的加入意味着“到达”方法的访问规则略有改变。它们在 Java 8 和 Java 11 之间几乎兼容。差异将在以下情况下显示:
简而言之,这几乎是一次简单的升级。当代码在做不应该做的事情时,或者当你的代码不是为模块设计的,而你的一些运行时代码是为模块设计的时,问题就会出现。
如果您可以访问源代码,则可以通过添加模块规范来解决很多问题;但是,这可能需要您了解模块化(这很容易,但仍然是一个障碍)。
【讨论】: