JRE
読み方:ジェーアールイー
別名:Java実行環境,Javaランタイム環境
JREとは、Sun Microsystemsが配布しているJavaプログラムを実行するために必要となるソフトウェアのセットのことである。
JREは、Java VMやクラスライブラリなどから構成されているが、SDKに備えられているコンパイラやデバッガなどは附属していない。JREを用いることで、Javaバイトコードで配布されているJavaのプログラムを、各々のプラットフォームが解釈できるネイティブコードと呼ばれる形式に変換し、実行することが可能となる。また、JREに対して、JavacやJavadocなどJavaの開発者向けのツールを含むプロダクトは、JDKと呼ばれる。
Java Runtime Environment
(Java実行環境 から転送)
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2019/09/01 07:35 UTC 版)
ナビゲーションに移動 検索に移動![]() | この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。 出典を追加して記事の信頼性向上にご協力ください。(2019年8月) |
Java Runtime Environment(Java実行環境、JRE)とは、コンピュータシステム上でJavaプラットフォーム用のアプリケーションソフトウェア(Javaアプリケーション)を動かせるようにするソフトウェア群である。JREはオラクル(旧サン・マイクロシステムズ)による公式実装のほか、OpenJDKのコミュニティによるオープン実装、IBMなどの正式にライセンス供与されたサードパーティによる実装などが存在する[1]。
概要
JREのソフトウェア群はJava仮想マシン (JVM) とアプリケーションプログラミングインタフェース (API) から成り立っている。APIはエディション(プロファイル)に応じて、標準Javaクラスライブラリの集合や拡張ライブラリなどを提供する。仮想マシンとAPIは互いに互換性がなければならず、それゆえJREとして共にバンドルされている。これは仮想マシンがプロセッサであり、APIがユーザインタフェースであるような仮想的なコンピュータと考えることができる。
JREは、Javaアプリケーション開発に必要なJavaコンパイラなどを含むソフトウェア開発キット (SDK) であるJava Development Kit(JDK、Java開発キット)にも同梱されている。
Javaアプリケーションは対応するJREがなければ動作させることができない。Java互換の組み込み機器では通例JREが標準インストールされているが、デスクトップマシンでは、JREが標準インストールされていないこともあり、その場合はJREを事前にインストールする必要がある。JDK 10までは、javapackagerと呼ばれるツールを利用し、JREをアプリケーションパッケージにプライベートモジュールとして同梱(バンドル)・再配布する形態もサポートされていた[2]。JREは基本的に後方互換性を保っており、古いJDKを利用して作成されたJavaアプリケーション(JAR)を新しいJRE上で動作させることもある程度可能であるが、新しいバージョンのJDK/JREで持ち込まれた非互換性により、アプリケーションが正常に動作しなくなることもある[3]。Javaアプレットなど、一部のソフトウェアコンポーネントは古いバージョンのJDK/JREにしか含まれておらず、新しいバージョンのJDK/JREでは利用不可能であるものもある。JavaFXのように、かつてJDK/JREに標準で含まれていたものの、のちに分離・独立して個別提供されるようになったコンポーネントもある。
Java 10までのJREにはJava Web Startも同梱されていた。インストール時にMozilla Firefox、Opera、Internet ExplorerなどのウェブブラウザにJava Plug-inをインストールするかどうかを尋ねられる。これはブラウザでJavaアプレットを動かし、Java Web Start対応Javaアプリケーションを起動できるようにするために必要なものであり、単純にFlashをブラウザ上で直接実行したり、ブラウザ外部のメディアプレーヤーを起動したりといったものと同じプラグインの一種である。
JREのアップデートには、旧バージョンを削除しないものがあった。セキュリティホールが発見されている、あるいはサポートが終了している旧バージョンのJava (JDK/JRE) をシステムに残しておくと、重大なセキュリティリスクが生じるため、旧バージョンを手動で削除することが強く推奨されている[4]。
関連項目
- Java
- Javaプラットフォーム
- Java仮想マシン (JVM)
- Java Development Kit(JDK、Java開発キット)
- IBM J9
参照
- ^ AndroidのJava実行環境は正式にライセンスされたJREではなく、またDalvik仮想マシン/Android Runtimeは正式なJava仮想マシンとの互換性がない。
- ^ javapackager
- ^ JDK 8の互換性ガイド
- ^ 古いバージョンのJavaをシステムからアンインストールしなければならないのはなぜですか。
外部リンク
|
Java実行環境 (JRE)
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/06/13 16:15 UTC 版)
「Java」の記事における「Java実行環境 (JRE)」の解説
詳細は「Java Runtime Environment」を参照 Java実行環境 (Java Runtime Environment; JRE) は、Javaアプリケーションを実行するために必要なソフトウェアである。Java仮想マシン、''Java.exe''のスターターを含めた各種実行サポートツール、Javaクラスライブラリで構成される。Java実行環境の中核はJava仮想マシンである。エディション毎に仮想マシンの仕様と性能は異なっており、また実行時は複数の動作モードを持つ。仮想マシンはスターターを通して稼働されるのが普通である。様々な使用状況に対応したスターターが最初に実行されて、そこから仮想マシンが呼び出されてJavaプログラムの実行を移譲される。仮想マシンはJavaクラスライブラリを逐次読み込みながらJavaプログラムを実行する。Java実行環境のツール内容とクラスライブラリ構成は、エディション毎に違いがある。 Javaクラスライブラリ Javaクラスライブラリは、普遍的に呼び出される特定の機能を実装したクラスの集合体である。Javaプログラムはライブラリ内のクラスを逐次呼び出しながら処理を実行する。なお、それぞれのJavaクラスライブラリ内部からプログラマの利用に向けて外部公開されている部分を「Java API」と呼ぶ。 基礎ライブラリ - Java言語の基礎を扱う。 入出力ライブラリ - ファイル入出力など。 コレクションライブラリ - 動的配列と動的連想配列。データ集合の操作。 数学ライブラリ - 各種計算を扱う。 国際化地域化ライブラリ - 暦、日付、時間、通貨、文字コードなどの国際化と地域化を扱う。 ネットワークライブラリ - ソケット通信を扱う。 GUIライブラリ - グラフィカル・ユーザーインターフェースを扱う。 アプレットライブラリ - アプレット生成用。 Javaビーンズライブラリ - ソフトウェアコンポーネント作成用。 データベース接続ライブラリ - SQLを扱う。 リモートメソッドライブラリ - 分散オブジェクトを扱う。 セキュリティライブラリ - セキュリティポリシー、ユーザー認証と権限承認、公開鍵暗号方式など。 Javaアプリケーションの形態 Java実行環境に用意されている特定のJavaクラスライブラリを利用する事でJavaプログラムは結果的に、以下の四種類のアプリケーション形態に派生する。 Javaアプリケーション (application) パーソナルコンピュータなどのローカル環境で実行されるJavaプログラム。「Java Web Start」は任意のjnlpファイル(java network launching protocol)をダウンロードして実行できるJavaアプリの配布システムである。この類似技術としてマイクロソフトのノータッチデプロイメント、ClickOnceがある。 Javaアプレット (applet) サーバからダウンロードされてWEBブラウザ上で実行されるJavaプログラム。サンドボックス機能下で厳しい動作制約が加えられている。当初はJavaの目玉技術であったが、様々な理由からさほど普及しなかった[独自研究?]。 Java Cardプラットフォームの分野であるスマートカード(ICカード)上で動くJavaプログラムもアプレットと呼ばれており、現在ではこちらに舞台を移している。 Javaサーブレット (servlet) サーバマシンで実行されるJavaプログラム。その名の通り手軽にサーバプログラムを実装出来るが、大規模サーバの構築にも適している。サーブレットはクライアントからのリクエストを逐次トランザクションして順次レスポンスする。WEBクライアントにはHTMLなどのプロトコルページ及び各種メディアをレスポンスしてWEBブラウザ上で表示させる。PerlなどによるCGIに比べ、サーバ側の負荷が低いなどのメリットがある。 Javaサーバページ (server page) サーブレットをWEBサーバ用に特化したものであり、XHTML (HTML) 内に記述するJavaプログラムである。WEBクライアントからのリクエストに伴うパラメータに従い、それをサーバ側で解釈してWEBページ内容を動的に生成、変化させてレスポンスする。コードは似ているが、JavaScriptの様にブラウザ側で実行するスクリプトではない。類似の技術にActive Server Pages、PHPがある。
※この「Java実行環境 (JRE)」の解説は、「Java」の解説の一部です。
「Java実行環境 (JRE)」を含む「Java」の記事については、「Java」の概要を参照ください。
- Java実行環境のページへのリンク