The better way to install Sun's Java

May 31, 2009

I've been grumpy for quite a while about how Sun's Java RPM mutilates your system. Since I don't like my systems mangled, I've avoided installing Sun's Java on any of my systems unless I absolutely had to, and if I had to I tried to do it on an expendable test system. This has been vaguely annoying, because even in Fedora 10 there are things that don't work with the substitutes.

(One of them is the KVM over IP portion of the lights out management environment for Sunfire X2100s and X2200s. Since they have a very nice LOM and we've wound up with a bunch, this has been a bit annoying.)

When people offer their software packaged as RPMs, I reflexively pick that option. In the case of Sun, it turns out that this is a mistake, because the non-RPM version of Sun Java is much better. It is happy to be installed by a non-root user, in which case it doesn't mangle your system at all; instead it drops itself into a single directory hierarchy (and you can even move it around).

(It helps to know that the 'self-extracting file' seems to extract itself into your current directory.)

Right now I'm just interested in dealing with is 'JNLP' files (Java Webstart executables, which are run by javaws, which may be present only in the 32-bit version of Java), and for them I didn't even need to add things to my $PATH; I just pointed Firefox at the right executable once, and I was done.

All in all, I feel somewhat silly for not having looked at the non-RPM version a long time ago. If I had, I could have saved myself years of low-level irritation.

PS: according to here you may need some compat RPMs (I had them installed already).

Written on 31 May 2009.
« The program energy efficiency optimist's view
A thought on giving custom redundant storage systems some history »

Page tools: View Source, Add Comment.
Search:
Login: Password:
Atom Syndication: Recent Comments.

Last modified: Sun May 31 01:31:55 2009
This dinky wiki is brought to you by the Insane Hackers Guild, Python sub-branch.