如何通过Putty在Ubuntu/Debian安装Java 8 32位Update 171
针对你的需求(已存在64位Java,需额外安装免费的Java 8u171 32位版本,仅远程Putty操作),下面是分步的具体命令和操作说明:
1. 启用32位程序支持
因为你是64位系统,要运行32位Java必须先安装对应的32位依赖库:
# 添加i386架构支持 sudo dpkg --add-architecture i386 # 更新软件源 sudo apt update # 安装必要的32位运行库 sudo apt install -y libc6-i386 libncurses5-i386 libstdc++6-i386 zlib1g:i386
2. 下载Java 8u171 32位安装包
Oracle的旧版本Java需要通过归档链接获取,这里直接用wget命令下载(已包含协议同意的Cookie参数):
# 下载JDK 8u171 32位压缩包 wget --no-check-certificate https://download.oracle.com/otn/java/jdk/8u171-b11/512cd62ec5174c3487ac17c61aaa89e8/jdk-8u171-linux-i586.tar.gz --header "Cookie: oraclelicense=accept-securebackup-cookie"
如果上述链接失效,你可以手动访问Oracle Java Archive页面找到JDK 8 Update 171的32位(Linux x86)版本,复制下载链接后替换到wget命令中即可。
3. 解压并安装到系统目录
我们将Java安装到标准的系统JVM目录,方便管理:
# 创建32位Java的安装目录 sudo mkdir -p /usr/lib/jvm/java-8-oracle-i386 # 解压压缩包到目标目录(--strip-components=1用于去掉顶层文件夹) sudo tar -zxf jdk-8u171-linux-i586.tar.gz -C /usr/lib/jvm/java-8-oracle-i386 --strip-components=1
4. 配置系统Java版本切换
使用update-alternatives工具将新安装的32位Java加入系统可选版本,这样可以随时和已有的64位Java切换:
# 注册java命令 sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/java-8-oracle-i386/bin/java 100 # 注册javac命令(如果需要编译Java代码的话) sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/java-8-oracle-i386/bin/javac 100
执行完后,你可以通过以下命令切换Java版本:
sudo update-alternatives --config java
在弹出的选项中选择对应32位Java的序号即可。
5. 验证安装结果
运行以下命令确认32位Java是否安装成功:
java -version
如果输出类似下面的内容,说明安装成功:
openjdk version "1.8.0_171"
OpenJDK Runtime Environment (build 1.8.0_171-b11)
OpenJDK Server VM (build 25.171-b11, mixed mode)
(注:如果是Oracle JDK会显示Oracle标识,但核心版本号一致)
另外,你可以用file命令验证是否是32位程序:
file /usr/lib/jvm/java-8-oracle-i386/bin/java
输出中会包含ELF 32-bit LSB executable字样,确认是32位版本。
内容的提问来源于stack exchange,提问作者PDBR Praveen




