27

実を言うと、私はこれらすべての用語(JDK / JRE / Java SDK)についてかなり混乱しています。それぞれが何をしているのかわかりません。

Eclipseで簡単なJavaの例を最初に作成し始めたとき、私はJREしか持っていなかったと確信しています。これは、通常のユーザーがシステムでJavaプログラム/アプレットを実行できるようにするために使用するデフォルトのJavaインストーラーであると信じていました。

ただし、現在クラスではGoogle Appengineを使用しており、これにはJavaSDKと同じであると私が推測しているJDKが必要です。JDKをインストールするということは、コマンドプロンプトでjavac -versionを機能させるために、環境変数にjava / binを追加する必要があることを知って時間を無駄にした後、JDKだけがjavacを持っていることがわかりました...

私の初期のJavaプログラムは、JDKをインストールせずに、したがってjavacを持たずにどのように機能していましたか?そして本当に主な質問...JREとJDKの違いは何ですか、そしていつそれぞれを使用しますか?

ありがとうございました :)

4

5 に答える 5

35

JRE = Javaランタイム環境-Javaを必要とするプログラム/ソフトウェアを実行するため、またはJavaで記述されたライブラリを使用するために必要なもの。たとえば、OpenOfficeにはJavaランタイム環境が必要です

JDK / Java SDK =Java開発キット/Javaソフトウェア開発キット-Javaを必要とするプログラムを作成したり、Javaで作成されたライブラリを使用したりするために必要なもの。たとえば、Javaで独自のワードプロセッシングツールを作成する場合です。

javaVM(仮想マシン)を起動するため、JREが付属しています。classJDKを使用してコンパイルされたファイルであるファイルを取り込むことができます。

JDKが付属しているのは、ファイルをJREで実行できるファイルjavacにコンパイルするために必要なものだからです。.java.class

于 2010-02-16T23:47:06.247 に答える
17

Eclipseには独自の組み込みコンパイラ(と呼ばれるecj)があります。これが、JDKをインストールせずに使用できる理由です。使用しませんjavac

Google App Engineはjavac、JDKに付属しているを使用します。

于 2010-02-16T23:50:51.137 に答える
3

JREとJDKの違いは何ですか?また、それぞれをいつ使用しますか?

JRE:Javaランタイム環境。Javaプログラムの実行にのみ使用されます。Chris Jester -Youngが述べたように、Eclipseにはコンパイラーが組み込まれていました。そのため、(Eclipseを実行するために)JREが必要でした。

Javaプログラムを出荷する場合、クライアントに必要なのはこのランタイム環境だけです。

JDK:Java Develpment Kit。これにはJREも含まれていますが、Javaコンパイラjavacなどのプログラム開発用の他のツールも含まれています。

Javaプログラムを作成する場合は、これを使用する必要があります。

于 2010-02-17T00:37:33.607 に答える
2

JREを使用してJavaプログラムをコンパイルする方法はありません。Javaコンパイラであるjavacには、JDKのみが付属しています。

  • どのテキストエディタでもJavaプログラムを作成できますが、これを行うために特別なことは何も必要ありません。
  • Javaプログラムを実行するにはJREが必要です。JREには、コンパイル済みのJavaプログラムを実行するために必要なJava仮想マシンが含まれています。
  • JavaプログラムをコンパイルするにはJDKが必要です。したがって、Java開発者の場合は、Java仮想マシンに加えて、コンパイルに必要なツールが付属しているため、JDKのみをインストールすることをお勧めします。
于 2010-02-16T23:52:46.147 に答える
1

「jreで開発できる場合もあります」

いいえ、ありません。

JavaDevelopmentKitを使用して開発します。Javaランタイム環境またはエンジン、あるいはそれが呼ばれるものなら何でも実行します。

于 2010-02-17T05:08:39.740 に答える