如何在 Fedora 17 中将 Java 版本切换到早期版本?

JHu*_*456 1 java fedora

我刚刚安装了 Fedora 17。我正在设置 Android 构建环境并且需要 Java。

我下载并安装了 jdk-6u32-linux-amd64.rpm 我跑了

java -version
Run Code Online (Sandbox Code Playgroud)

它吐出正确的版本。

一两天后,我在 Fedora 17 中尝试了我的第一次编译,但它抱怨 Java 并失败了。我再次低速运行 java -version 并看到它吐了出来

$ java -version
java version "1.7.0_03-icedtea"
OpenJDK Runtime Environment (fedora-2.1.fc17.7-x86_64)
OpenJDK 64-Bit Server VM (build 22.0-b10, mixed mode)
Run Code Online (Sandbox Code Playgroud)

我难住了。我的意思是,自从我安装以来,我已经运行了更新/升级命令,但我不认为更新了完整版本的修订版......所以,我跑了

alternatives --config java
Run Code Online (Sandbox Code Playgroud)

那只给了我 java 1.7 版本。

在挖掘更多内容的同时,我发现构建环境推荐的 Java 版本是 jdk-6u27-linux-x64-rpm.bin 所以我从这里下载了它:Oracle 下载

当我跑:

sudo sh jdk-6u27-linux-x64-rpm.bin
Run Code Online (Sandbox Code Playgroud)

它返回:

Unpacking...
Checksumming...
Extracting...
UnZipSFX 5.50 of 17 February 2002, by Info-ZIP (Zip-Bugs@lists.wku.edu).
  inflating: jdk-6u27-linux-amd64.rpm  
  inflating: sun-javadb-common-10.6.2-1.1.i386.rpm  
  inflating: sun-javadb-core-10.6.2-1.1.i386.rpm  
  inflating: sun-javadb-client-10.6.2-1.1.i386.rpm  
  inflating: sun-javadb-demo-10.6.2-1.1.i386.rpm  
  inflating: sun-javadb-docs-10.6.2-1.1.i386.rpm  
  inflating: sun-javadb-javadoc-10.6.2-1.1.i386.rpm  
Preparing...                ########################################### [100%]
    package jdk-2000:1.6.0_32-fcs.x86_64 (which is newer than jdk-2000:1.6.0_27-fcs.x86_64) is already installed

Done.
Run Code Online (Sandbox Code Playgroud)

所以现在我很困惑。我跑了:

alternatives --config java
Run Code Online (Sandbox Code Playgroud)

再次但它仍然只返回 1.7,所以我不知道该怎么做。我希望最终使用 6u27 作为 JDK 的已安装和功能版本。谢谢你。

小智 9

解压 linux bin 后,您必须让系统知道。

替代方案 --install /usr/bin/java java /path/to/your/java 10

然后你可以配置它

替代方案--config java