回答:
ほとんどのLinuxディストリビューションでは、次のupdate-alternatives
ように使用できます。
sudo update-alternatives --config java
javaコマンドを提供するすべてのパッケージがリストされ、変更することができます。変更したくない場合は、単にそれから変更Ctrl-C
します。
キャッチは1つだけです- java
公式のパッケージマネージャー(dpkg
/ apt-get
、rpm
/ yum
)を使用せずにインストールしたものを単純に抽出した場合、update-alternativesには表示されません。
--list
オプションがあるわけではありません。たとえば、Centos 6.7はサポートしていません。
| grep java
できること:
find / -name java
すべてのファイルを検索します。ご使用のLinuxバージョンのパッケージマネージャーもそれらを一覧表示できるはずです。
find /usr -type f -name java -print 2>/dev/null | xargs -i echo {} -version | bash 2>&1 | sed ':a;N;$!ba;s/\n/\n\n/g'
セットアップの詳細に関しては、多くのことを望みます。Javaは、Linuxでさまざまな方法でインストールできます。apt、yum、yastなどのディストリビューションパッケージmaangerを使用してインストールするか、手動でインストールできます。
Javaのインストールでは、ほとんどの場合、Java実行可能ファイルが適切に機能する必要があるため、locateコマンドまたはfindコマンドを使用してさまざまなコマンドを見つけることができます。
リンクと重複を見つける可能性が最も高い例ですが、ディレクトリ名はそれを特定するのに役立つはずです。
for f in $(locate -ber '^java$'); do test -x && echo "$f"; done
以前は以下を使用して、デフォルトとして設定されていないJavaバージョンを使用できるように環境変数セットが必要なアプリケーションのJava 8インストールを決定していました。
update-java-alternatives -l java-8-oracle
しかし、それは今日機能しなくなりました。update-java-alternatives
スクリプト/プログラムは、もはや私のUbuntu 14.04システムにインストールされていません。現在インストールされているのはalternatives
です。
特定の代替Javaパスを取得するために現在使用しているのは、次のとおりです。
alternatives --display java | grep priority | grep jdk-1.8
次に、結果をマッサージして、アプリの環境変数に必要なものを取得します。
update-alternatives --list java
それらをリストするためだけに使用しない理由はありますか?