2012-03-15 35 views
19

Eclipseの2つの異なるバージョン - 32/64bitについてちょっと混乱します。JavaとEclipse - 32 vs. 64bit

私の知る限り、Javaバイトコード(=コードのビルド)はプラットフォームに依存しません。ユーザーが32ビットJREでバイトコードを実行すると、コードは32ビットプロセスとして実行されます。ユーザーが64ビットJREでバイトコードを実行すると、コードは64ビットプロセスとして実行されます。

EclipseはJREを実行する必要があります。原因はJavaで書かれているためです。しかし、なぜユーザーのJREバージョンだけが重要であれば、Eclipseダウンロードページに32ビット版と64ビット版のEclipseがあるのですか?

64ビットEclipse版には64ビットJREまたはJDKが必要ですか?はいの場合、なぜですか?


第2の混乱:私はJREの32ビット版と64ビット版の必要性を理解しています。しかし、結果のバイトコードがプラットフォームに依存しない場合、JDKの32ビット版と64ビット版はなぜ存在しますか?

答えて

7

実行環境のためではありません。Eclipseはいくつかのネイティブなものを使用しており、対応するJDKで実行する必要があるためです。 Eclipse内で開発しているアプリケーションは、インストールしたJRE上で実行できます。設定で指定するだけです。

JDKはコンパイラであり、他にもたくさんあります。それらの多くは、対応するプラットフォームを実行する必要があるネイティブアプリケーションです。

+0

ありがとう、しかし私はそれを取得しません。 eclipseでJavaアプリケーションを開発していない場合(例えばC++)、JDKをインストールする必要はありません。では、JREについてではなく、JDKに関することはなぜですか? – alapeno

+0

バイトコードを実行するには、正しいJREをインストールするだけです。しかし、バイトコードを生成するには、JDK内のネイティブアプリケーションであるコンパイラを呼び出す必要があります。 JNI、Javadocジェネレータなどのヘッダジェネレータなど、JDK内にはネイティブアプリケーションがあります。 –

+0

IDEをインストールすると、自動的にこれらのアプリケーションが呼び出されます。あなたがそれを持っていない場合、あなたは自分でそれらを呼び出す必要があります。 –

8

のEclipseありがとう、本質的にネイティブコードである、SWTに依存しています。 64ビットバージョンで使用される(プラグインまたはフィーチャーディレクトリ内に)、32ビットバージョンとは大幅に異なる数多くのDLLなどが存在します。

+0

ありがとうございました。したがって、マシンにインストールされているJREバージョンに合わせてEclipseバージョンをダウンロードする必要があります。 – alapeno

+1

はい、正しいです。 JREはシステムに依存しているため、使用するJREに依存します。 –