3

Java でオープンソース プロジェクトをまとめることを検討しており、1.4 以前の JDK をサポートしないことについて激しく議論しています。フレームワークは、古い Java パターンとイディオムを使用して作成することもできますが、ジェネリックやアノテーションなど、より成熟した 1.5+ リリースの機能の恩恵を受けることができます。

だから本当に知りたいのは、古いJDKのサポートがフレームワークを選択する際の主要な決定要因であるかどうかです?

当然のことながら、古い JDK に固執しているレガシー システムがありますが、ロジスティクスは別として、1.4 JDK をサポートする説得力のある技術的な理由がある人はいますか?

ありがとう、

スティーブ

4

5 に答える 5

12

特定のモバイルまたは組み込みデバイスを除いて、主流のJavaの1.4互換性に固執する技術的な理由は考えられません(Jonの回答に関する議論を参照)。レガシー サポートには制限が必要で、1.5 は 5 年近く前のものです。私の意見では、人々をより良い方向へと向かわせるためのより説得力のある理由です。

更新 (眠れない): 考慮すべき良い前例は、Spring 3 には Java 5 (pdf) が必要になるということです。また、大企業が使用している多くのサーバーが EOL であるか、まもなく EOL になることを考慮してください (WAS 5.1 は2008 年 9 月以降サポートされなくなり、JBoss 4.0 のサポートは 2009 年9 月に終了します)、Java 1.4 自体はサポートされなくなります。 2008 年 10 月以降のサポート

于 2009-07-26T19:54:58.170 に答える
4

Blackberry や同様のモバイル デバイスで使用する可能性はありますか? 彼らが一般的に1.5をサポートしているとは思いません。

于 2009-07-26T19:58:09.537 に答える
1

1.4 (AS/400) しかインストールされておらず、新しい JVM をインストールするのが非常に面倒なお客様がいます。したがって、私は Java 1.4 の互換性が重要であると考える人の 1 人です。

注: これは、コンパイル後に Retrotranslator を使用することで実現できる可能性が高くなります。次に、元の jar を使用した Java 1.5 と、変換された jar を使用した Java 1.4 の両方を使用して、すべてのテストを実行します。

http://retrotranslator.sourceforge.net/

于 2009-07-26T20:47:27.660 に答える
1

JDK 1.4 は、2008 年 10 月に Sun からのサポートが終了しました。サポートが終了した JVM で実行されているソフトウェアをサポートする必要がある唯一の理由は、下位互換性と、まだそれに大きく依存している顧客ベースです。

于 2009-07-26T20:50:19.603 に答える
0

それはあなたのプロジェクトが何であるかに依存すると思います。まだ J2SE 1.4 (JRun、WebSphere 6) を使用しているクライアントがあります。

J2SE 1.3 を使用しているクライアントはありませんが、J2SE 1.3 との互換性を維持しようとしているコア コンポーネントがいくつかあります (非常に基本的で再利用性の高いもの)。

とはいえ、これは問題ではないかもしれません。クライアントの場合、 Retroweaverを介して JAR/クラスを実行することにより、いくつかの J2SE 1.5 コンパイル済みライブラリを使用することができました。

于 2009-07-26T23:43:30.473 に答える