我最近设置了一个需要运行JDK的构build服务器(例如,编译Java源代码)。 Ubuntu中的OpenJDK软件包将OpenJDK JRE作为依赖项引入,而依赖性依赖于大量仅与graphics环境相关的软件包。 对于标准的JRE,有一个无头版本的包,但是对于JDK,没有。
这个问题已经在不同的地方讨论过了,我发现和使用的一个解决scheme是这样的:
$ apt-get --no-install-recommends -d install openjdk-6-jdk $ dpkg -i --ignore-depends=openjdk-6-jre /path/to/just-downloaded.deb
虽然这个工作,它现在离开我的系统一个破碎的依赖树和apt-get拒绝进一步安装,直到我运行apt-get -f
。
有更好的解决办法吗?
这已经在下面的Ubuntu的bug中讨论过了。
据我所见,你有以下select:
当然,从长远来看,选项2是最好的,因为它解决了每个人的问题,选项1和选项3只为你解决,然而1和3更快。
难道你只是下载并安装Sun的JDK? 没有编译,不需要X11。 我更喜欢它的包装选项。
chmod +x ~/jdk-6u14-linux-i586.bin cd /usr sudo mkdir java cd java sudo ~/jdk-6u14-linux-i586.bin export JAVA_HOME=/usr/java/jdk1.6.0_14 export PATH=$JAVA_HOME/bin:$PATH
我怀疑他只是需要更新他的替代品的链接:
update-alternatives --set java /usr/lib/jvm/default-java/bin/java
(或类似的东西)