我使用最新的软件包更新了我的 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
答案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 提供更全面的功能。