Java/ja

Java は Sun Microsystems によって開発されたプログラミング言語]]で、Java で開発されたアプリケーションがさまざまなプラットフォームで実行できるランタイムを採用しています. クロスプロットフォームのアプリケーションを作りたい開発者にとって、Java は人気のある選択肢です.

概要
Javaは、Sun Microsystems社が開発したプログラミング言語です. 言語はオブジェクト指向であり、各プラットフォーム用のコードを再コンパイルする必要なく複数のプラットフォーム上で動作するように設計されています. Javaはネイティブプログラムとしてコンパイルすることができますが、Javaの人気の多くは、自動メモリー管理など他の機能に加え、その携帯性によるものでしょう. プラットフォーム独立を可能にするために、JavaコンパイラはJavaコードをオペレーティングシステム上で直接動作するのではなく JVM (Java仮想マシン) 上で動作するJavaバイトコードと呼ばれる中間表現にコンパイルします.

Javaバイトコードを実行するためには、JRE （Javaランタイム環境）がインストールされている必要があります. JREは、とりわけコアライブラリ、プラットフォーム依存の JVM、ブラウザ用のプラグインを提供します. JDK（Java開発キット）は、バイトコードコンパイラやデバッガなどのプログラミングツールを追加します.

JVM の諸言語
Java 仮想マシンは Java プログラミング言語のみによって使用されているわけではありません. 複数のプログラミング言語が Java プラットフォームを使用し、JVM 上で動作しています. そうした例には以下を含みます: Clojure、Apache Groovy、Kotlin、Scala.

選択肢
Gentoo は多くの Java 実行環境 (JRE) と Java 開発キット (JDK) を提供しています. 現時点で使用可能な選択肢は以下の通りです.

JRE/JDK をインストールする
プロファイルのデフォルトの JDK をインストールするには、次のコマンドを実行します.

プロファイルのデフォルトの JRE をインストールするには、次のコマンドを実行します.

ヘッドレス JRE をセットアップする
時には Java のすべての機能を持つ完全な JRE が必要ない場合もあるでしょう. サーバーで Java を使う場合、GUI、グラフィック、サウンド、あるいはプリンター関連の機能すら必要ないことがしばしばあります. 簡略化された(時にはヘッドレスとも呼ばれる) JRE をインストールするには、選んだ JRE のタイプに応じていくつかの USE フラグを変える必要があります.

現在の Gentoo プロファイルによってはこれは既にそうなっているかもしれません. 通常通り、特定のパッケージに当てはまる USE フラグの設定は を pretend モードで実行することで確認できます:

概要
Gentoo では複数の JDK や JRE を衝突させることなくインストールすることができます.

デフォルトの仮想マシンを設定する
コマンドに  オプションを付けて実行するとシステムにインストールされているすべての JRE と JDK の一覧が出力されます. これは出力の例です:

* は現在アクティブな JVM (システム VM または設定されていればユーザー VM) であることを表します. 角括弧 ([]) 内の名前はその特定の VM のハンドルや ID です. ハンドルまたは番号を に与えることで VM を設定できます. 以下ではシステム VM を設定する方法の例を提供します.

代替の方法: ハンドル番号で VM を選択する:

デフォルト CLASSPATH を設定する
はシステム全体のデフォルト CLASSPATH やユーザー固有のデフォルト CLASSPATH の設定にも使うことができます.

はじめに、システムにインストールされている CLASSPATH に含める可能性がある Java ライブラリを列挙します. これは出力の例です:

この場合も、角括弧 ([]) 内の名前は に渡す ID です. これは一例です:

ログアウトしてから再度ログインするか、 とタイプして環境を更新します.

ユーザーの場合、 がシェルプロファイルから読み込まれる ファイルを作成します.

システム全体またはユーザーのデフォルトクラスパスを希望する場合、以下のようなものをシェルのプロファイルに追加します. これはおすすめできません:

Java ブラウザプラグイン
For those who need a Java-enabled browser for a specific use case, there is e.g. /  available in the   overlay, which has long-term support for NPAPI and thus Java plugins up to JDK 8.

USE フラグの設定
USE フラグについての詳細は Gentoo ハンドブックの USE フラグの章を参照してください.

USE フラグ

 * フラグはさまざまなプログラムの Java サポートを追加します;
 * フラグはMozilla ライクなブラウザ (Firefox を含む) 向けのサポートを追加します. Mozilla ライクなブラウザで Java アプレットを表示するために必要です;
 * フラグは Java Cryptography Engine のサポートを追加します;

以下の USE フラグは JAVA_PKG_IUSE に含まれます.
 * フラグはパッケージのソースコードの zip ファイルをインストールします. これは伝統的に IDE で使用中のライブラリーにソースを「アタッチ」するために使われます;
 * Java パッケージでは、 フラグは javadoc を使用して API ドキュメンテーションをビルドします.


 * The flag installs a zip of the source code of a package. This is traditionally used for IDEs to 'attach' source to the libraries that are being use;
 * For Java packages, the flag will build API documentation using javadoc.

Minecraft launcher errors

 * A specific error in which  crashed after a few seconds, throwing "Alarm" and "SaveToBuffer failed" error was solved by setting  the USE flag   for.


 * When executing  the following error was produced:

This was solved by executing  with the following option:

関連項目

 * Java Developer Guide
 * Project:Java/Why_build_from_source
 * Project:Java/Getting_Involved

外部資料

 * gentoo-java、gentoo-user、gentoo-dev メーリングリストのアーカイブ
 * IRC の と
 * Gentoo フォーラムの Java 7 and bootstrapping icedtea

さらなる情報はオフラインで入手できます:



この(訳註: 翻訳元の)文書に関する提案や質問については、Gentoo Java team までメールをお寄せください: