Linux版EclipseにDarkest Dark Themeプラグインを入れていたのですが、立ち上げるとフリーズすることがしばしばありました。
Linux版EclipseとDarkest Dark Themeは、どうやら相性がわるいみたいです。
Linux版STS3でも同じ現象が起こりました。
WindowsでDarkest Dark Themeを使っていましたが、フリーズするようなことはありませんでした。
Eclipse内で設定できるダークテーマはあまり好みではないのですが、今回Darkest Dark Themeをアンインストールすることにしました。
Darkest Dark Themeのアンインストール
-
ヘルプ>Eclipseマーケットプレイスをクリックします。
-
インストール済みタブをクリックします。
-
インストールされたDarkest Dark Themeをアンインストールします。
Eclipseが立ち上がらない
Darkest Dark Themeをアンインストール後、Eclipseを再起動すると、今度はEclipseが立ち上がらなくなりました。
ログにはこのようなエラーメッセージが書かれていました。
!SESSION 2020-05-17 13:02:27.213 -----------------------------------------------
eclipse.buildId=4.11.0.I20190307-0500
java.version=1.8.0_252
java.vendor=Private Build
BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=ja_JP
Framework arguments: -product org.eclipse.epp.package.java.product
Command-line arguments: -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.java.product
!ENTRY org.eclipse.ui.ide 4 4 2020-05-17 13:02:30.338
!MESSAGE Error opening Welcome dialog
!ENTRY org.eclipse.ui.ide 4 0 2020-05-17 13:02:30.340
!MESSAGE
!STACK 0
java.lang.NullPointerException
at org.eclipse.ui.internal.ide.application.IDEApplication.showCustomDialog(IDEApplication.java:622)
at org.eclipse.ui.internal.ide.application.IDEApplication.promptForWorkspace(IDEApplication.java:355)
at org.eclipse.ui.internal.ide.application.IDEApplication.checkInstanceLocation(IDEApplication.java:282)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:145)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:137)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:107)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:400)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:661)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:597)
at org.eclipse.equinox.launcher.Main.run(Main.java:1476)
at org.eclipse.equinox.launcher.Main.main(Main.java:1449)
!ENTRY org.eclipse.osgi 4 0 2020-05-17 13:02:30.537
!MESSAGE アプリケーション・エラー
!STACK 1
java.lang.NoSuchFieldError: useReplacementIcons
at org.eclipse.swt.widgets.Control.<init>(Control.java:160)
at org.eclipse.swt.widgets.Label.<init>(Label.java:99)
at org.eclipse.jface.dialogs.IconAndMessageDialog.createMessageArea(IconAndMessageDialog.java:91)
at org.eclipse.jface.dialogs.MessageDialog.createDialogArea(MessageDialog.java:313)
at org.eclipse.jface.dialogs.IconAndMessageDialog.createDialogAndButtonArea(IconAndMessageDialog.java:227)
at org.eclipse.jface.dialogs.IconAndMessageDialog.createContents(IconAndMessageDialog.java:206)
at org.eclipse.jface.window.Window.create(Window.java:431)
at org.eclipse.jface.dialogs.Dialog.create(Dialog.java:1099)
at org.eclipse.jface.window.Window.open(Window.java:788)
at org.eclipse.jface.dialogs.MessageDialog.open(MessageDialog.java:394)
at org.eclipse.jface.dialogs.MessageDialog.openError(MessageDialog.java:480)
at org.eclipse.ui.internal.ide.application.IDEApplication.showCustomDialog(IDEApplication.java:631)
at org.eclipse.ui.internal.ide.application.IDEApplication.promptForWorkspace(IDEApplication.java:355)
at org.eclipse.ui.internal.ide.application.IDEApplication.checkInstanceLocation(IDEApplication.java:282)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:145)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:137)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:107)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:400)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:661)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:597)
at org.eclipse.equinox.launcher.Main.run(Main.java:1476)
at org.eclipse.equinox.launcher.Main.main(Main.java:1449)
Pleiadesのキャッシュ削除
エラーメッセージから原因を探していると、プラグインのインストールやアンインストールをした際に同じようなエラーが出ていることが分かりました。
ということで、日本語プラグインPleiadesのキャッシュを削除します。
sudo rm -r /opt/eclipse/configuration/jp.sourceforge.mergedoc.pleiades
キャッシュを削除後、再度Eclipseを起動すると、Eclipseが起動してくれました。
まとめ
Ubuntuのバージョンにもよると思いますが、私の環境(私はUbuntu 18.04 LTSを使っています)では、Linux版EclipseではDarkest Dark Themeは使わない方が良さそうです。
Eclipseがフリーズするようなことが頻繁に起こるなら、プラグインを疑ってみるのもいいかもしれません。
最後までお読み頂きありがとうございました。
コメントを残す