Debian Java

2004年10月1日

在 Debian 上安装大多数东西非常容易:apt-get install package-name。遗憾的是,Java 是一个例外,因为它不在基本的 Debian 系统中。我最近在我的 Debian Sid 桌面上下載并安装了 java 1.5(或 5,或者他们现在称之为的任何版本)。简而言之,过程如下。

# apt-get install java-package
download the sun jdk from java.sun.com
# make-jpkg jdk-1_5_0-linux-i586.bin
# dpkg -i sun-j2sdk1.5_1.5.0_i386.deb
# apt-get install sun-j2sdk1.5debian
# update-alternatives --config java

(这是我所做的。它对我有用,但可能不是最好的方法,或者对您不起作用。)

现在是血腥的细节。要将 Java 安装到 Debian 包中,您需要一个工具来将 Sun 安装程序 Debian 化。有一些脚本可以做到这一点,我一直在努力找出哪个是正确的脚本(我已经使用不同的脚本多次安装了)。似乎最好的选择可能是 java-package,它在 Sid 中可用。(另一种选择是 j2se-package,但它现在已经过时。)

从 Sun 下载安装程序,您需要以“.bin”结尾的安装程序 - 不要使用 RPM。

一旦您有了二进制文件,您现在就可以使用二进制文件上的 make-jpkg 命令将其 Debian 化。

当我这样做时(使用所有三个脚本),我遇到了一个问题,因为脚本当前未设置为识别 Sun 的 java 1.5 二进制文件的文件名(这可能在您阅读本文时已修复)。要解决此问题,我编辑了 /usr/share/java-package/sun-j2sdk.sh。(如果您不知道如何操作,请等到它更新。)编辑后,deb 包构建没有问题。

构建完包后,我将其移动到我保存自定义包的位置(/root/debs)并运行 dpkg 来安装它。它给出了一个错误,说它由于依赖于 sun-j2sdk1.5debian 而无法安装。但是不要惊慌 - 如果您随后使用 apt-get 安装 sun-j2sdk1.5debian,一切都会正常安装。您不能反过来做,因为 sun-j2sdk1.5debian 依赖于 sun-j2sdk1.5。

如果您之前像这样安装了 Java,在命令行中键入“java”只会为您提供旧的 VM。要获得新的 VM,请使用 update-alternatives(或者您可以自己创建一个链接)。

感谢 Michael Schuerig 让我知道更新的打包脚本。我最近发现了这个安装过程的描述,它看起来比我这里的好得多。

Dirk Estievenart 告诉我一些过时的事情。以下是他的安装步骤

//download bin jdk from Sun
#apt-get install java-package
//exit root and login with normal user:
#fakeroot make-jpkg jdk-1_5_0_06-linux-i586.bin
//su again:
#dpkg -i sun-j2sdk1.5_1.5.0+update06_i386.deb
#update-alternatives --config java
# java -version
//The latter just to check