I recently set up a build server that requires a JDK to run (for example, to compile the Java sources). The OpenJDK package in Ubuntu pulls in the OpenJDK JRE as a dependency which, in turn, depends on a large number of packages that are only relevant for graphical environments. For the standard JRE, there's a headless version of the package, but for the JDK, no.
This issue has been discussed in various places before, and one solution that I found and used was this:
$ apt-get --no-install-recommends -d install openjdk-6-jdk
$ dpkg -i --ignore-depends=openjdk-6-jre /path/to/just-downloaded.deb
While this worked, it now leaves my system with a broken dependency tree and apt-get refuses further installs untill I run apt-get -f
.
Is there a better solution to this?
This has been discussed in the following ubuntu bug.
As far as I can see you have the following options:
Of course, option 2 is the best in the long term, as it solves the problem for everyone, and options 1 and 3 solve it only for you, however 1 and 3 are quicker.
Couldn't you just download and install Sun's JDK? No compiling, no X11 required. I prefer it to the packaged options.
I suspect he just needed to update his etc-alternatives links:
(or something like that)