安装适用于 12.04 的特定 Java 版本

安装适用于 12.04 的特定 Java 版本

我使用最新的软件包更新了我的 12.04 服务器,其中包括对 java 1.8u20 的更新。

现在我发现我的应用程序无法在 Java 1.8u20 上正确运行。现在我正在寻找一种方法将 Java 降级到以前的版本或 1.8u5(就我而言)。

我尝试安装特定版本

apt-get install oracle-java8-installer=8u5-1~webupd8~3
apt-get install oracle-java8-installer=8u5-1~webupd8
apt-get install oracle-java8-installer=8u5-1

E: Version 'XXX' for 'oracle-java8-installer' was not found

但我从http://www.ubuntuupdates.org/ppa/webupd8_java?dist=saucy似乎不起作用。

我的问题是,如何安装特定版本的 Java 8?

答案1

如果您需要在任何发行版上安装特定版本的 Java,则必须手动完成,但这很容易。

首先,您需要了解您拥有哪种架构的操作系统。

uname -a

x86_64 是 64 位和 ix86(x 可以是 3 或 6)。

如果您有 64 位操作系统(目前可能如此),请按照以下步骤操作。-> 打开终端。

1)创建目录并转到/opt/jdk

mkdir /opt/jdk
cd /opt

2)下载Java包(如果有人需要其他版本,只需更改版本并建立链接)

wget --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u5-b13/jdk-8u5-linux-x64.tar.gz

3)可选(如果您未以root身份登录,则需要):

sudo su

4)解压软件包:

tar -zxf jdk-8u5-linux-x64.tar.gz -C /opt/jdk

5)将 Oracle 的 Java 设置为默认值:

update-alternatives --install /usr/bin/java java /opt/jdk/jdk1.8.0_05/bin/java 100
update-alternatives --install /usr/bin/javac javac /opt/jdk/jdk1.8.0_05/bin/javac 100

6)检查 Java 版本是否正常

java -version

我遵循这部分教程,但此方法适用于任何发行版。例如,我主要使用在需要特定版本 Java 7 的服务器上进行安装。

答案2

我按照步骤找到了答案,结果如下几乎完美的。

update-alternatives 不能确保您具有任何必要的依赖项 - 它只是一种官方方式,用于跟踪从系统文件夹到 java 和 javac 等主要可执行文件的软链接。

在我的 Ubuntu 18.04 精简版中,我缺少一些 x 库。我可以添加这些库来获得所需的结果:

sudo apt-get install -y libxext-dev libxrender-dev libxtst-dev

我正在运行一个使用 AWT / Screen 对象的 Java 应用程序。由于 Main 中的 NullPointerException,我遇到了崩溃。虽然信息量不大,但当我的 $DISPLAY 未正确设置为准备好接受 Java 绘制命令的 X 系统时,我也遇到了同样的问题。添加 x 库将为您安装的 Java 提供更全面的功能。

相关内容