javaの実装は一つではありません。Debianは普通gijといわれるjavaの実行環境だけがインストールされます。授業ではコンパイラが必要なのでsun-javaと呼ばれるコンパイラを入れています。コンパイラには実行環境も含まれますが、gijが優先して使われる場合があります。
Debianにはupdate-alternativesというシステムがあり、複数の実装からどれを起動するか選択できます。
listで2つの実装があることがわかりますが、どれが選択されているか分かりません
c3s10@star00:~/java$ update-alternatives --list java /usr/bin/gij-4.4 /usr/lib/jvm/java-6-sun/jre/bin/java
displayの表示はわかりにくいですが優先度1044と63の2つのjavaがあって、java-6-sunを使っていると言っています。
z1c1g@star00:~/java$ update-alternatives --display java java - 手動モード リンクは現在 /usr/lib/jvm/java-6-sun/jre/bin/java を指しています /usr/bin/gij-4.4 - 優先度 1044 /usr/lib/jvm/java-6-sun/jre/bin/java - 優先度 63 スレーブ java.1.gz: /usr/lib/jvm/java-6-sun/jre/man/man1/java.1.gz 現在の '最適' バージョンは '/usr/bin/gij-4.4' です。
javacはまた別で、java-6-sunしかないのでそれを使っていると言っています。
z1c1g@star00:~/java$ update-alternatives --display javac javac - 自動モード リンクは現在 /usr/lib/jvm/java-6-sun/bin/javac を指しています /usr/lib/jvm/java-6-sun/bin/javac - 優先度 63 スレーブ javac.1.gz: /usr/lib/jvm/java-6-sun/man/man1/javac.1.gz 現在の '最適' バージョンは '/usr/lib/jvm/java-6-sun/bin/javac' です。
config
c3s10@star00:~/java$ update-alternatives --config java There are 2 choices for the alternative java (providing /usr/bin/java). Selection Path Priority Status ------------------------------------------------------------ * 0 /usr/bin/gij-4.4 1044 auto mode 1 /usr/bin/gij-4.4 1044 manual mode 2 /usr/lib/jvm/java-6-sun/jre/bin/java 63 manual mode Press enter to keep the current choice[*], or type selection number: 2 update-alternatives: using /usr/lib/jvm/java-6-sun/jre/bin/java to provide /usr/bin/java (java) in manual mode. update-alternatives: error: /etc/alternatives/java.dpkg-tmp から /usr/lib/jvm/java-6-sun/jre/bin/java へのシンボリックリンクを作成できません: 許可がありません
キーボードから2を入力してgij-4.4からjava-6-sunに変更をしました。
いまのところgijのjavaではGUI関係で表示が思わしくありませんので、sun-javaにします。
日本語ロケールでは次のように表示されます。sun-javaになっているときは、そのまま[Enter]キーを押します。
z1c1g@star00:~/java$ update-alternatives --config java alternative java (/usr/bin/java を提供) には 2 個の選択肢があります。 選択肢 パス 優先度 状態 ------------------------------------------------------------ 0 /usr/bin/gij-4.4 1044 自動モード 1 /usr/bin/gij-4.4 1044 手動モード * 2 /usr/lib/jvm/java-6-sun/jre/bin/java 63 手動モード 現在の選択 [*] を保持するには Enter、さもなければ選択肢の番号のキーを押してください:
javacでは
z1c1g@star00:~/java$ update-alternatives --config javac リンクグループ javac に 1 つの alternative のみがあります: /usr/lib/jvm/java-6-sun/bin/javac 設定は行いません。