Javaプログラムをコマンドラインから実行しているときに問題が発生しました。Linuxシステムにopenjdk-6-jdkをインストールしましたが、openjdk-7-jdkに関連するエラーが表示されます。
最初にシステムにjdk 7をインストールしましたが、削除しましたが、アプリケーションの実行中にまだ問題が発生しています。
cammandを実行した後
Sudo update-alternatives --config Java
次のように警告を表示します
update-alternatives:warning: /etc/alternatives/Java is dangling,
最適な選択で更新されます。
リンクグループJavaには1つの選択肢しかありません:/usr/lib/jvm/Java-7-openjdk/jre/bin/Java
設定するものはありません。
私は何をすべきか?
OpenJDK6を次のようにインストールしたと仮定します。
Sudo apt-get install openjdk-6-jdk
Ubuntu 64ビットで、パスがインストールに有効であることを確認します(32ビットバージョンを使用している場合は変更します)。
/usr/lib/jvm/Java-6-openjdk-AMD64/jre/bin/Java
/usr/lib/jvm/Java-6-openjdk-AMD64/bin/javac
セットアップの代替案:
Sudo update-alternatives --install "/usr/bin/Java" "Java" "/usr/lib/jvm/Java-6-openjdk-AMD64/jre/bin/Java" 1
Sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/lib/jvm/Java-6-openjdk-AMD64/bin/javac" 1
Sudo update-alternatives --set Java /usr/lib/jvm/Java-6-openjdk-AMD64/jre/bin/Java
Sudo update-alternatives --set javac /usr/lib/jvm/Java-6-openjdk-AMD64/bin/javac
または、Javaとコンパイラの両方で正しいバージョンがチェックされていることを確認してください:
Sudo update-alternatives --config Java
Sudo update-alternatives --config javac
インストールされているJavaの代替案をリストします:
Sudo update-alternatives --list Java
Sudo update-alternatives --list javac
更新Java代替:
Sudo update-alternatives --config Java
Sudo update-alternatives --config javac
Openjdk 8をdockerにインストールした場合。 「software-properties-common」をインストールする必要があるかもしれません
apt-get update && apt-get install apt-file -y && apt-file update && apt-get install software-properties-common
そして、openjdk 8をインストールし、end-number = 3でupdate-alternativesをセットアップします。
Sudo apt-get install openjdk-8-jdk
export Java_HOME="/usr/lib/jvm/Java-8-openjdk-AMD64"
update-alternatives --install "/usr/bin/Java" "Java" "/usr/lib/jvm/Java-8-openjdk-AMD64/jre/bin/Java" 3
update-alternatives --install "/usr/bin/javac" "javac" "/usr/lib/jvm/Java-8-openjdk-AMD64/bin/javac" 3