web-dev-qa-db-ja.com

Visualvmは、OracleJDKを使用するUbuntu15.10で「jdkhomeが見つかりません」で失敗します

webupd8team/JavaPPAからOracleJDKをインストールしてから、visualvmパッケージをインストールしました。 visualvmを起動すると、次のエラーメッセージが表示されます。

[beni:~]$ visualvm
No jdkhome found

$Java_HOME/usr/lib/jvm/Java-7-Oracleに正しく設定されています。

また、visualvmプロパティを設定してjdkhomeを開始すると、同じエラーが発生します。

[beni:~]$ visualvm --jdkhome $Java_HOME
No jdkhome found
17

visualvmは、次の3つのディレクトリでJDKをチェックします。

  • /usr/lib/jvm/Java-7-openjdk-$Arch
  • /usr/lib/jvm/Java-8-openjdk-$Archおよび
  • /usr/lib/jvm/default-Java

/usr/bin/visualvm開始スクリプトから:

visualvm_jdkhome=
for j in /usr/lib/jvm/Java-7-openjdk-$Arch /usr/lib/jvm/Java-8-openjdk-$Arch /usr/lib/jvm/default-Java; do
    if [ -x $j/bin/javac ]; then
       visualvm_jdkhome=$j
       break
    fi
done

したがって、/usr/lib/jvm/default-Java$Java_HOMEへのシンボリックリンクにすると、visualvmが適切なJDKを見つけます。

cd /usr/lib/jvm
Sudo ln -Tsf Java-7-Oracle default-Java
36

私の場合、default-Javaのシンボリックリンクでさえ問題を修正しませんでした。修正するために、私はしました:

Jvisualvmを編集し、「ゴミ箱」をjdkhome変数に追加します

  • $ Sudo vi /usr/bin/jvisualvm

jdkhome =/tmp

次に、パラメータを渡すプログラムを開始しました。

  • /usr/bin/jvisualvm --jdkhome /usr/lib/jvm/myJava7

注:今日(2016)、私のバージョンではJava7でのみ動作します

更新:2017年にバージョン1.3.8を使用すると、Java 8)で動作します。ただし、/ usr /にvisualvm_jdkhome=/tmpを追加する必要がありました。 bin/visualvm

1
Topera