- PR -

素朴な疑問[JDK付属JREとJREの違い]

投稿者投稿内容
(株)ぽち
ぬし
会議室デビュー日: 2002/09/10
投稿数: 376
投稿日時: 2005-03-07 11:46
非常にお恥ずかしい質問をしているのはないかと
思いながら、「いまさら聞けない質問」を思い切
ってしてみようかと思います。

JDKのインストールをする際、通常2つのインストール
作業が行われると思います。

1.JDKのインストール
2.JREのインストール

ここで疑問なのが、1.でインストールした時点でJDKの
中にJREが入っていることです。

つまり、素朴な疑問として

2.のJREってインストールする必要あるの?

ってことなのです。

違いを見ると、例えば、jre/binの中にserver関係のものが
あるかないかだとかは見てわかります。

つまり、JDK付属のJREになくて、JREにあるモノがないんじゃないかと。


何かJREをインストールした方が良いことってあるのでしょうか?
# 通常eclipseなど使う場合、JREの方を指定しますが、
# JDK付属のJREを使うと問題あるとか?


それとも私は何か壮大な勘違いをしているのでしょうか。。
未記入
会議室デビュー日: 2003/09/24
投稿数: 18
投稿日時: 2005-03-07 13:12
 お疲れさまです。
http://e-words.jp/w/JRE.html
http://e-words.jp/w/JDK.html
 「実行環境」と「開発環境」の違いかと思います。
開発環境だけ入れても実行環境がないと、確かめようがないので
一緒についてくるのが普通なのだと思いますが。。。

別途JREを入れるケースとしては、
 開発は1.3で行ったプログラムの二次開発で、JDK1.3が必要。
 でも、Javaで起動するツールが1.4にしか対応してないのでJREを入れて
パスを指定して使う時等です。
未記入
ぬし
会議室デビュー日: 2004/09/17
投稿数: 667
投稿日時: 2005-03-07 13:24
いや、元質問者はその辺のことは十分に分かっていると思う。

疑問に思っているのは、JDK のインストールフォルダにも JRE が含まれているのに、JDK インストールパッケージに単体配布の JRE が含まれていて、別途インストール有無を確認してくるのはなぜか? なにか JRE が異なるのか? ってことでしょう。

たとえば 最新の 5.0 を Windows に標準的にインストールすると、

Program Files
 Java
  jdk1.5.0_01
   jre (←実行環境)
    bin
    lib
  jre1.5.0_01 (←実行環境)
   bin
   lib

このように 実行環境が 2つインストールされることになる。JRE のインストールで「はい」を選んだ場合ね。
パテ太
ベテラン
会議室デビュー日: 2004/08/16
投稿数: 64
お住まい・勤務地: 千葉・東京
投稿日時: 2005-03-07 13:44
インストールガイドに書かれていますが・・・?
未記入
会議室デビュー日: 2003/09/24
投稿数: 18
投稿日時: 2005-03-07 14:17
>いや、元質問者はその辺のことは十分に分かっていると思う。

壮大な勘違いをしていたのは私のようですね・・・
失礼いたしました。

リンク先のを読み直して、勉強させていただきました。
ありがとうございます。
(株)ぽち
ぬし
会議室デビュー日: 2002/09/10
投稿数: 376
投稿日時: 2005-03-07 14:25
どうも。質問者です。

>パテ太さん
ありがとうございます。
すいません。ガイドなど読んだことがありませんでした・・。

引用:

非公開 JRE と公開 JRE の違い - JDK をインストールすると、非公開 J2SE Runtime Environment (JRE) とオプションで公開コピーがインストールされます。JDK に付属しているツールを実行する場合は、非公開 JRE が必要です。非公開 JRE にはレジストリの設定がなく、全体が jre ディレクトリ (通常は C:\Program Files\jdk1.5.0\jre) に格納されます。この場所を認識しているのは JDK のみです。一方、公開 JRE は、他の Java アプリケーションで使用でき、JDK の外部 (通常は C:\Program Files\Java\jre1.5.0) に格納され、Windows レジストリ (HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft 上) に登録され、[アプリケーションの追加と削除] を使って削除できます。また、ブラウザに登録したり、java.exe を Windows のシステムディレクトリにコピー (デフォルトシステムの Java プラットフォームとなるように) したりすることもできます。



要は、レジストリやプログラムとして登録する以外は非公開JRE(この呼び方も初めて知った。)
と公開JREに違いはない。

例えばTomcatやEclipeを使用したい場合はJDKのみで十分である、と読み取れたのですが
合っていますでしょうか。


公開JREとしては
・IEなど他のプログラムからも参照可能(Windowsのsystemディレクトリにコピー)

くらいしかインストールする意味が見出せなかったのですがどうなのでしょう。


[追記]
あ、

一方、公開 JRE は、他の Java アプリケーションで使用でき

っていう部分を見ると、非公開JREじゃ他のJavaアプリが動かないみたいに取れますけど
どうなんでしょうか。

ちょっとインストールアンインストール繰り返して実験してみようかな・・。

[ メッセージ編集済み 編集者: (株)ぽち 編集日時 2005-03-07 14:28 ]
かつのり
ぬし
会議室デビュー日: 2004/03/18
投稿数: 2015
お住まい・勤務地: 札幌
投稿日時: 2005-03-07 20:18
Eclipseだと公開JREで起動して、
プログラムの実行はJREを選べますよね。
YOU@IT
ぬし
会議室デビュー日: 2002/03/29
投稿数: 284
お住まい・勤務地: 大阪
投稿日時: 2005-03-07 20:42
引用:

(株)ぽちさんの書き込み (2005-03-07 14:25) より:
一方、公開 JRE は、他の Java アプリケーションで使用でき
っていう部分を見ると、非公開JREじゃ他のJavaアプリが動かないみたいに取れますけど
どうなんでしょうか。


公開JRE(私もこの呼び方ははじめて知りました)にはあって、非公開JREにはない
ファイルがいくつもあるようですね。

以前APサーバをリモートデバッグする際に、dt_socket.dll が非公開JREにはなくて
アレ?と思ったことがありました。

スキルアップ/キャリアアップ(JOB@IT)