2

私は現在、一種の古い Web アプリケーションに取り組んでいます。上司との話し合いの中で、アプリケーションが を使用していると言いましたJava 1.4。それから、彼は私に割り込んで、プロジェクトが実際に使用していると言いましたJava 1.5。ワークスペースを開き、プロジェクトが Java 1.4 を使用していると述べた理由を示します。に移動しましたProject Properties > Build Path > Libraries。ここにリストされているのはJRE System Library[J2SE-1.4]です。

その後、彼は制御を取り、JDK Compliance セクションで Compiler Compliance level has the value 1.5 に連れて行ってくれWindow > Preferences > Java > Compilerまし

プロジェクトが 1.4 を使用していると思わせるもう 1 つの理由は、Listオブジェクトにパラメーター化された型がなく、Eclipse によってオブジェクトに対して警告が生成されないためです。また、入力するとList<String>、Eclipseはエラーを表示します

構文エラー。パラメータ化された型は、ソース レベルが 1.5 の場合にのみ使用できます

これにより、アプリケーションが Java 1.5 を使用していると確信しました。しかし、私の現在の立場 (ジュニア開発者) では、上司との議論に入る前に、自分の仮定が本当に正しいことを確認する必要があります。そこで、私の質問は、アプリケーションが使用している Java のバージョンをどのように知ることができるかということです。に記載されているJavaバージョンの違いは何ですか

Project Properties > Build Path > Libraries

Window > Preferences > Java > Compiler?

4

2 に答える 2

4

上司が示したのは、インストールされている JDK/JRE で、これは 1.5 ですが、これらは下位互換性があるため、1.5 JDK を作成して 1.4 互換コードを生成できます。これは、プロジェクトのプロパティで見たものです (これが適切な場所です)。

そう、

Window > Preferences > Java > Compiler: JDK およびワークスペース レベルのコンパイラ設定がインストールされています。あなたの場合、1.5コードをコンパイルするように構成された1.5 JDKがインストールされています

Project Properties > Build Path > Libraries: ワークスペース設定をオーバーライドするプロジェクト固有の設定。あなたの場合、1.5 JDK の J2SE 1.4 互換性を使用して、1.4 コードを生成します。

プロジェクト ファセット (Java) も表示され、 1.4 と表示されます。

于 2013-08-06T02:52:14.507 に答える
2

Window > Preferences > Java > Compiler: 現在のワークスペース内のプロジェクトで使用される既定のコンパイル レベルを指定します。で指定されたデフォルトの JRE も使用します。Window > Preferences > Java > Installed JREs

Project Properties > Build Path > Libraries: 選択したプロジェクトで使用される JRE を指定します。デフォルトでは、ワークスペースに指定されたデフォルトの JRE になりますが、変更することができます。プロジェクトで使用されるコンパイル レベルは、場所Project Properties > Java Compilerにあります。これもデフォルトでワークスペースからコピーされますが、個々のプロジェクト用に変更できます。

あなたの場合、Project Properties > Build Path > LibrariesJava 1.4を使用しているため、Java 1.4を使用しており、訪問できるコンパイラ準拠レベルを確認していますProject Properties > Java Compiler

于 2013-08-06T02:52:27.880 に答える