Java 2 Platform Standard Edition 5.0 の互換性 に、J2SE 5.0(1.5のこと?)と過去のバージョンとの互換性についての記述があります。
中には結構やっかいなものがあって、
- 仮想マシン - これまで、クラスリテラル (Foo.class など) を評価するとクラスが初期化されました。5.0 では初期化されません。前の動作に依存するコードは書き直す必要があります。
これなんかは、一見ちゃんと動いているように見えるけど、初期化処理が行われていないため、予期せぬエラーに悩まされてしまうかもしれない。
プログラム言語のバージョンアップって難しい。