This just got in on the jEdit mailing list, a request for help to get jEdit running on a Linux installation, which allegedly has Java installed:
> ~$ java -version
> java version “1.5.0″
> gij (GNU libgcj) version 4.3.1
>
> Copyright (C) 2007 Free Software Foundation, Inc.
> This is free software; see the source for copying conditions. There is NO
> warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
This shows that when you call “java”, it isn’t actually Java that you call, but GCJ – on this Linux distribution. Being as incompatible as GCJ is, that is a very unfortunate thing to do, as it means that everyone who isn’t familiar with Java goes right to the Java support channels to ask for help on this Linux distribution and GCJ problem.
What those responsible for this mess expect everyone to do is to install Sun Java and then to configure the operating system to make Sun Java the default. How this is to be done varies from Linux distribution to Linux distribution.
The reason for adding GCJ as a Java replacement can only be speculated on, my guess is that the open source community wants to force Sun into providing more freedom to bundle Sun Java, etc. While understandable, it is unfortunate to make all their own users suffer, or to even use their users in this battle of theirs against Sun.
My advice always was and still is not to add GCJ under the name of “java”. It is better to deal with the error message “Command not found: java” than random malfunctions in almost any kind of application due to the incompatibilities of GCJ.
The open source community has been doing this for a bunch of years now, I wonder if this ugly story is approaching its 10th anniversary yet.