Java ME 【Java Platform, Micro Edition】 J2ME / Java 2 Micro Edition
概要
Java ME(Java Platform, Micro Edition)とは、プログラミング言語「Java」におけるAPIなどの機能セットの標準の一つで、携帯情報端末やデジタル家電、車載機器などの組み込みシステム向けの機能をまとめたもの。CPUの処理能力やメインメモリ容量が大きく限られる環境でJavaを実行できるように取りまとめられた仕様で、Java SEなど他のプラットフォームに比べ機能に一部制限があるため他の環境向けのJavaプログラムはそのままでは動作しない場合もある。
機器の種類によって制約条件が大きく異なるため、対象機器の種類によって「コンフィギュレーション」を定義し、その中でさらに具体的な環境ごとに機能セットを定義した「プロファイル」を用意している。
標準で用意されているコンフィギュレーションとして、デジタル放送のセットトップボックス(STB)といった据え置き型の情報家電やカーナビゲーションシステムなどを想定した「CDC」(Connected Device Configuration)、携帯電話や携帯情報端末を想定した「CLDC」(Connected Limited Device Configuration)がある。
CLDCは極めて資源が限られた環境を想定し、軽量なJava仮想マシン(KVM:Kilobyte Virtual Machine)で動作する。CLDCのプロファイルとして携帯電話向けの「MIDP」(Mobile Information Device Profile)や、NTTドコモ独自の「DoJaプロファイル」などがよく知られている。
2000年に当時のサン・マイクロシステムズ(Sun Microsystems)社によって最初の仕様が発表され、旧来型の携帯電話(フィーチャーフォン/ガラケー)のアプリ機能などに採用された。バージョン5までは「Java 2」ブランドに基づく「J2ME」(Java 2 Platform, Micro Edition)という名称だった。以降のバージョンで「Java ME」に改称された。
Javaの機能セットにはJava MEの他に、基本となる標準的な機能をまとめた「Java SE」(Standard Edtion/旧J2SE)と、サーバや大規模システム向けの「Java EE」(Enterprise Edtion/旧J2EE)の3種類が用意されている。
携帯機器や組み込み向けのJava環境としては、スマートフォン向けにJava互換の開発・実行環境を独自に構築した(正確にはJavaではない)米グーグル(Google)社の「Android」(アンドロイド)が普及したため、本家のJava MEは2010年代以降はあまり利用されていない。