我正在尝试在远程 Debian 机器上安装 JDK。我一直在遵循这一页。
问题是,make-jpkg 失败了。这是我得到的输出(加上我正在运行的 java-package 的版本:
:~/Desktop/Downloads$ fakeroot make-jpkg jdk-6u16-linux-i586.bin
Creating temporary directory: /tmp/make-jpkg.BdyKSdDYXH
Loading plugins: blackdown-j2re.sh blackdown-j2sdk.sh common.sh ibm-j2re.sh ibm-j2sdk.sh j2re.sh j2sdk-doc.sh j2sdk.sh j2se.sh sun-j2re.sh sun-j2sdk-doc.sh sun-j2sdk.sh
Detected Debian build architecture: i386
Detected Debian GNU type: i486-linux-gnu
No matching plugin was found.
Removing temporary directory: done
:~/Desktop/Downloads$ apt-cache policy java-package | head -2java-package:
Installed: 0.42
知道它为什么会失败吗?
答案1
看起来您正在尝试构建比 make-jpkg 配置的版本更新的 Sun jdk 版本。过去,当我遇到这种情况时,我修改了 make-jpkg 的插件。
在这种情况下,正确的插件可能是“/usr/share/java-package/sun-j2sdk.sh”。
- 制作该文件的备份,以防遇到问题。
- 用您最喜欢的编辑器打开该文件。
将以下内容添加到您的体系结构 (i386|i486-linux-gnu) 的 case 语句中。这是厚颜无耻地从 Ubuntu 9.04 上的 sun-j2sdk.sh 插件中复制而来。
"jdk-6u"[0-9][0-9]"-linux-i586.bin") # SUPPORTED j2se_version=1.6.0+update${archive_name:6:2}${revision} j2se_expected_min_size=130 found=true ;;
- 保存文件。
- 像以前一样运行 make-jpkg。
如果一切顺利的话,现在您就可以安装新的闪亮的 java 包了。
小心。
答案2
您不应该再使用 make-jpkg 了。在 Debian 可以分发 JDK 本身之前,它只是一种临时方法。您链接的文章已有四年历史。请安装 sun-java6-jdk 包。Lenny 有 6u12。如果您确实需要 6u16,sid 中提供了它。
答案3
作为普通用户,您可以尝试以下操作:
DEB_BUILD_GNU_TYPE=i386-linux fakeroot make-jpkg jdk-6u16-linux-i586.bin
然后运行失败的命令(希望这次能够有效)。