Linux版EclipseとDarkest Dark Themeは相性がわるいみたい!

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がフリーズするようなことが頻繁に起こるなら、プラグインを疑ってみるのもいいかもしれません。

最後までお読み頂きありがとうございました。

広告

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


ABOUT US
ぽむ
はじめまして! ぽむ と申します。 Java、Kotlin (Android)、VBAなどの開発経験があるITエンジニアです。 備忘録として始めたブログですがみなさまのお役に立てたら光栄です。 英語など IT 以外の話題にも触れていこうと思っています。 詳しい自己紹介についてはこちら! よろしくお願いします。