小编alf*_*205的帖子

使用 rpm 在 linux (fedora 16) 上并排安装 sun java 6 和 sun java 7

这是我想要实现的目标,但我失败了(我是 Linux 新手)。

我有一个 Fedora 16 机器(64 位)并且想安装多个版本的 oracle java(目前是 java 6 和 java 7)。我正在尝试使用 rpm 软件安装 java,我想将它们都安装在/opt.

我从 Oracle 站点下载了所需的软件包:

jdk-6u30-linux-x64-rpm.bin
jdk-7u2-linux-x64.rpm
Run Code Online (Sandbox Code Playgroud)

并从.bin运行的文件中提取 rpm 包

./jdk-6u30-linux-x64-rpm.bin -x
Run Code Online (Sandbox Code Playgroud)

获得以下情况:

jdk-6u30-linux-amd64.rpm
jdk-7u2-linux-x64.rpm
Run Code Online (Sandbox Code Playgroud)

然后我看了看里面jdk-6u30-linux-amd64.rpm

rpm -qpl ~/Downloads/jdk-7u2-linux-x64.rpm
Run Code Online (Sandbox Code Playgroud)

并获得 java 6 将其文件安装到:

/etc                   (some files)
/usr/java/jdk1.6.0\_30 (the majority of the files)
Run Code Online (Sandbox Code Playgroud)

以类似的方式,java 7 将安装到:

/etc
/usr/java/jdk1.7.0\_02
Run Code Online (Sandbox Code Playgroud)

因为我想安装到/opt我尝试使用rpm relocation安装。这两个包似乎都是 rpm 可重定位的,实际上:

rpm -qpi ~/Downloads/jdk-6u30-linux-amd64.rpm | grep -i reloc
Run Code Online (Sandbox Code Playgroud)

结果给出

Relocations : /usr/java
Run Code Online (Sandbox Code Playgroud)

rpm …
Run Code Online (Sandbox Code Playgroud)

linux java rpm sun-java6-jdk fedora-16

8
推荐指数
2
解决办法
4万
查看次数

标签 统计

fedora-16 ×1

java ×1

linux ×1

rpm ×1

sun-java6-jdk ×1