CentOS標準のJavaはなぜかGCJ
viでJavaのサンプルコード書いてコンパイル、そのまま実行してみたら、カレントディレクトリにあるクラスが見えないらしく、ClassNotFoundExceptionに。
環境はCentOS4.5のデフォルトで入ってるjre1.4.2・・・
-bash-3.00$ java -version java version "1.4.2" gcj (GCC) 3.4.6 20060404 (Red Hat 3.4.6-8) Copyright (C) 2006 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.
当然、J2RE入れれば問題ないのですが。
-bash-3.00$ java -version java version "1.5.0_14" Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_14-b03) Java HotSpot(TM) Client VM (build 1.5.0_14-b03, mixed mode, sharing)
この辺とか読むと、CentOSだけじゃなくてRed Hat系は全部そうなのかなという感じですね*2。
RHELでJavaを使うための5ステップ | Greedy
http://www.greedy.jp/blog/nowhereman/200711/15/042719
Sun Javaが(以前は)オープンソースじゃなかったからこういう事になってしまっているのでしょうか。不勉強なもので歴史的経緯はわからないのですが。