答案1
脱机安装 Java
查看您正在运行的是 32 位还是 64 位操作系统:
uname -m
x86_64:64 位内核
i686:32 位内核
前往Oracle Java SE 网站并决定要安装哪个版本:
JDK:Java 开发工具包。包括完整的 JRE 以及用于开发、调试和监控 Java 应用程序的工具。
服务器 JRE:Java 运行时环境。用于在服务器上部署 Java 应用程序。包括 JVM 监控工具和服务器应用程序通常所需的工具。
接受许可证并将下载链接复制到剪贴板。记得选择正确的 tar.gz(64 位或 32 位)。使用 wget 将存档下载到您的服务器:
wget --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u5-b13/jdk-8u5-linux-x64.tar.gz
Oracle 不允许在未接受其许可的情况下进行下载,因此我们需要修改请求的标头。或者,您也可以使用浏览器下载压缩文件,然后使用 SFTP/FTP 客户端手动上传。
始终从 Oracle 网站获取最新版本,并根据您下载的文件修改本教程中的命令。
安装 Oracle JDK
/opt 目录保留用于存放所有不属于默认安装的软件和附加软件包。为 JDK 安装创建一个目录:
sudo mkdir /opt/jdk
并将 java 解压到“/opt/jdk”目录中:
sudo tar -zxf jdk-8u5-linux-x64.tar.gz -C /opt/jdk
验证该文件已被解压到 /opt/jdk 目录中。
ls /opt/jdk
将 Oracle JDK 设置为默认 JVM
在我们的例子中,java 可执行文件位于 /opt/jdk/jdk1.8.0_05/bin/java 下。要将其设置为计算机中的默认 JVM,请运行:
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
验证安装
通过运行以下命令验证 java 是否已成功配置:
update-alternatives --display java
和
update-alternatives --display javac
输出应如下所示:
java - auto mode
link currently points to /opt/jdk/jdk1.8.0_05/bin/java
/opt/jdk/jdk1.8.0_05/bin/java - priority 100
Current 'best' version is '/opt/jdk/jdk1.8.0_05/bin/java'.
javac - auto mode
link currently points to /opt/jdk/jdk1.8.0_05/bin/javac
/opt/jdk/jdk1.8.0_05/bin/javac - priority 100
Current 'best' version is '/opt/jdk/jdk1.8.0_05/bin/javac'.
检查安装的另一种简单方法是:
java -version
输出应如下所示:
java version "1.8.0_05"
Java(TM) SE Runtime Environment (build 1.8.0_05-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.5-b02, mixed mode)
(可选)更新 Java
要更新 Java,只需从 Oracle 网站下载更新版本并将其解压到 /opt/jdk 目录下,然后将其设置为具有更高优先级编号(在本例中为 110)的默认 JVM:
update-alternatives --install /usr/bin/java java /opt/jdk/jdk.new.version/bin/java 110
update-alternatives --install /usr/bin/javac javac /opt/jdk/jdk.new.version/bin/javac 110
您可以保留旧版本或者将其删除:
update-alternatives --remove java /opt/jdk/jdk.old.version/bin/java
update-alternatives --remove javac /opt/jdk/jdk.old.version/bin/javac
rm -rf /opt/jdk/jdk.old.version