Eclipseで、"Missing JDK"、"Java デバッグ・オプションの初期化"中に内部エラーが発生しました。というエラーダイアログが出るようになり、プロジェクトのデバッグ起動ができなくなったので、解決するために試した事について書いています。
※ 本ページはプロモーションが含まれています。
Eclipseを使っていてアプリのデバッグ起動ができなくなったり、エラーダイアログがいくつか出るようになったので、そのエラー内容と解決するために試した事について書いていきます。
EclipseでJavaのSpring Bootアプリを作っていたのですが、アプリを起動しようとするとエラーダイアログが出るようになりました。
問題が発生
'Java デバッグ・オプションの初期化' に問題が発生しました。
"Java デバッグ・オプションの初期化" 中に内部エラーが発生しました。
そして、通常モードでアプリ起動はできるのですが、デバッグモードで起動するとコンソールに何も表示されない真っ白な状態になりました(デバッグモードで起動もできてない)。
あと、Eclipseのアプリのプロジェクトを右クリック->デバッグ->デバッグの構成(または実行->実行の構成)を押してデバッグ構成ウインドウを開こうとすると、Missing JDKというエラーダイアログが出るようになりました。
Missing JDK
The JRE you are runnning Eclipse with appears to not be a JDK.
Spring Boot Live hovers will not work with a plain JRE.
以上が今回Eclipseで起こった問題です。正直今回この問題が起こった原因はわかってないのですが(たぶん自分に原因がある…)、このエラーが起こる前にEclipseのヘルプ->更新の確認を実行したので、それがきっかけかもしれません。
・開発やEclipseのバージョンは以下の通りです。
macOS:Catalina(バージョン10.15.7)
Eclipse:Pleiades All in One、4.16(2020-06)、Java Full Edition版(*2020/8/28時点の最新安定版です)
まず、Missing JDKという事なので、eclipse.iniファイルのVMを確認してみたら変更されていたので、-vmオプションを下のように変更しました(元の状態に戻しました)。
◾️変更前
-vm
../Eclipse/plugins/org.eclipse.justj.openjdk.hotspot.jre.full.macosx.x86_64_14.0.2.v20200815-0932/jre/lib/libjli.dylib
️◾️変更後
-vm
/Applications/Eclipse_2020-06.app/Contents/java/11/Home/bin
ちなみに自分のmacOS環境では、eclipse.iniファイルは以下のパスにあります。
/Applications/Eclipse_2020-06.app/Contents/Eclipse/eclipse.ini
eclipse.iniファイルを編集後、Eclipseを再起動して動作確認をしてみたら、「Missing JDK、The JRE you are runnning Eclipse with appears to not be a JDK…」というエラーダイアログは出なくなりましたが、まだデバッグオプションのエラーダイアログは出るし、デバッグモードでのプロジェクトの起動はできないままでした。
このあと同じエラーについての情報がないかをググって調べてみたのですが、それらしき情報が見当たらなかったので、Eclipseをクリーン起動してみました。
mac環境でEclipseをクリーン起動するには、ターミナルでこのコマンドを実行します。
$ /Applications/Eclipse_2020-06.app/Contents/MacOS/"eclipse -clean.command"
Eclipseが起動して再度適当なEclipseのプロジェクトをデバッグ起動してみたら、エラーダイアログも出ずにデバッグ起動も問題なくできるようになりました。 このあとはいつも通りSpotlightでEclipseを起動しても問題は起きませんでした。
クリーン起動(-cleanオプションをつけて起動)は、EclipseやEclipse内のタスクが正常に終了しなかった場合などにできるゴミキャッシュを削除してからEclipseを起動してくれるので、Eclipseが起動しなくなった時や何か解決できない原因不明なエラーがある時は試してみると直るかもしれません。
ただ、クリーン起動は設定変更などで直らなかった場合に、最後の手段としてやった方が良いと思います。クリーン起動する時は自己責任でお願いします。
Spring Boot2で日記投稿ウェブアプリ開発入門トップページ
JavaフレームワークのSpring Bootでシンプルな日記投稿ウェブアプリの開発しながら、入門者・初心者にもわかりやすいように説明しています。DBを使用して、新規投稿、編集、削除、一覧表示という基本的なCRUD機能を備えたアプリです。