Debian 9: org.eclipse.swt.SWTError: Eclipse を開いた直後にハンドルがなくなる

Debian 9: org.eclipse.swt.SWTError: Eclipse を開いた直後にハンドルがなくなる

最近、ラップトップを変更し、Debian 9 をインストールしました。新しいマシンで、Eclipse インストーラーを開いた直後に次のエラー メッセージが表示されます。

org.eclipse.swt.SWTError: ハンドルがもうありません。org.eclipse.swt.SWT.error(SWT.java:4725)、org.eclipse.swt.SWT.error(SWT.java:4614)、org.eclipse.swt.SWT.error(SWT.java:4585)、org.eclipse.swt.widgets.Widget.error(Widget.java:532)、org.eclipse.swt.widgets.Control.drawBackground(Control.java:235)、org.eclipse.swt.widgets.Control.windowProc(Control.java:6800)、org.eclipse.swt.widgets.Display.windowProc(Display.java:6132)。 org.eclipse.swt.internal.gtk.GTK._gtk_main_do_event(ネイティブ メソッド) org.eclipse.swt.internal.gtk.GTK.gtk_main_do_event(GTK.java:4166) org.eclipse.swt.widgets.Display.eventProc(Display.java:1429) org.eclipse.swt.internal.gtk.OS._g_main_context_iteration(ネイティブ メソッド) org.eclipse.swt.internal.gtk.OS.g_main_context_iteration(OS.java:1585) org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:4661) org.eclipse.oomph.setup.internal.installer.AbstractSimpleDialog.show(AbstractSimpleDialog.java:155) で、org.eclipse.oomph.setup.internal.installer.InstallerApplication.run(InstallerApplication.java:250) で、org.eclipse.oomph.setup.internal.installer.InstallerApplication.start(InstallerApplication.java:408) で、org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) で、org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:137) で、org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:107) でorg.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:400) で org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) で sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) で sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) で sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) で java.lang.reflect.Method.invoke(Method.java:498) で org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:660) でorg.eclipse.equinox.launcher.Main.basicRun(Main.java:597) で org.eclipse.equinox.launcher.Main.run(Main.java:1468) で org.eclipse.equinox.launcher.Main.main(Main.java:1441)

インストーラーなしでEclipse(2019-06)をダウンロードすると、Eclipseを正常に開くことができますが、最初のクリック(テキストエディターまたはツールバー)の後、

未処理のイベントループ例外 これ以上のハンドルはありません

その後

内部エラー SWTError が発生しました。ワークベンチを終了することをお勧めします。その後もエラーが発生し、警告なしにワークベンチが終了する可能性があります。詳細については、.log ファイルを参照してください。

ワークベンチを終了しますか?

ログファイル:

!SESSION 2019-07-02 16:32:14.505 ----------------------------------------------- eclipse.buildId=4.12.0.I20190605-1800 java.version=1.8.0_212 java.vendor=Oracle Corporation ブートローダー定数: OS=linux、ARCH=x86_64、WS=gtk、NL=en_US フレームワーク引数: -product org.eclipse.epp.package.java.product コマンドライン引数: -os linux -ws gtk -arch x86_64 -product org.eclipse.epp.package.java.product

これはログ ファイル /home/xxxxx/eclipse-workspace/.metadata/.bak_0.log の続きです。作成時刻: 2019-07-02 16:32:42.144

!ENTRY org.eclipse.ui 4 0 2019-07-02 16:32:42.144 !MESSAGE ステータス処理中にエラーが発生しました !STACK 0 org.eclipse.swt.SWTError: ハンドルがありません at org.eclipse.swt.SWT.error(SWT.java:4725) at org.eclipse.swt.SWT.error(SWT.java:4614) at org.eclipse.swt.SWT.error(SWT.java:4585) at org.eclipse.swt.widgets.Widget.error(Widget.java:532) at org.eclipse.swt.widgets.Control.drawBackground(Control.java:235) at org.eclipse.swt.widgets.Control.windowProc(Control.java:6800) at org.eclipse.swt.widgets.Display.windowProc(Display.java:6132) org.eclipse.swt.internal.gtk.GTK._gtk_main_do_event(ネイティブ メソッド) org.eclipse.swt.internal.gtk.GTK.gtk_main_do_event(GTK.java:4166) org.eclipse.swt.widgets.Display.eventProc(Display.java:1429) org.eclipse.swt.internal.gtk.OS._g_main_context_iteration(ネイティブ メソッド) org.eclipse.swt.internal.gtk.OS.g_main_context_iteration(OS.java:1585) org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:4661) org.eclipse.ui.statushandlers.WorkbenchErrorHandler.showStatusAdapter(WorkbenchErrorHandler.java:84) org.eclipse.ui.statushandlers.WorkbenchErrorHandler.handle(WorkbenchErrorHandler.java:52) org.eclipse.ui.internal.ide.IDEWorkbenchErrorHandler.handle(IDEWorkbenchErrorHandler.java:105) org.eclipse.ui.internal.WorkbenchErrorHandlerProxy.handle(WorkbenchErrorHandlerProxy.java:34) org.eclipse.ui.statushandlers.StatusManager.handle(StatusManager.java:214) org.eclipse.ui.statushandlers.StatusManager.handle(StatusManager.java:256) org.eclipse.ui.statushandlers.StatusManager.handle(StatusManager.java:266) で org.eclipse.ui.application.WorkbenchAdvisor.eventLoopException(WorkbenchAdvisor.java:325) で org.eclipse.ui.internal.ExceptionHandler.handleException(ExceptionHandler.java:65) で org.eclipse.jface.window.Window.runEventLoop(Window.java:827) で org.eclipse.jface.window.Window.open(Window.java:799) で org.eclipse.ui.internal.dialogs.AboutDialog.lambda$0(AboutDialog.java:134) で org.eclipse.swt.custom.BusyIndi​​cator.showWhile(BusyIndi​​cator.java:72) でorg.eclipse.ui.internal.dialogs.AboutDialog.buttonPressed(AboutDialog.java:130) で、org.eclipse.jface.dialogs.Dialog.lambda$0(Dialog.java:622) で、org.eclipse.swt.events.SelectionListener$1.widgetSelected(SelectionListener.java:84) で、org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:252) で、org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) で、org.eclipse.swt.widgets.Display.sendEvent(Display.java:5874) で、org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1400) でorg.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:5138)、org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:4663)、org.eclipse.jface.window.Window.runEventLoop(Window.java:823)、org.eclipse.jface.window.Window.open(Window.java:799) org.eclipse.ui.internal.about.AboutHandler.execute(AboutHandler.java:31) org.eclipse.ui.internal.handlers.HandlerProxy.execute(HandlerProxy.java:283) org.eclipse.ui.internal.handlers.E4HandlerProxy.execute(E4HandlerProxy.java:95) sun.reflect.NativeMethodAccessorImpl.invoke0(ネイティブ メソッド) sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) java.lang.reflect.Method.invoke(Method.java:498) org.eclipse.e4.core.internal.di.MethodRequestor.execute(MethodRequestor.java:58) で org.eclipse.e4.core.internal.di.InjectorImpl.invokeUsingClass(InjectorImpl.java:320) で org.eclipse.e4.core.internal.di.InjectorImpl.invoke(InjectorImpl.java:254) で org.eclipse.e4.core.contexts.ContextInjectionFactory.invoke(ContextInjectionFactory.java:173) で org.eclipse.e4.core.commands.internal.HandlerServiceHandler.execute(HandlerServiceHandler.java:156) で org.eclipse.core.commands.Command.executeWithChecks(Command.java:498) でorg.eclipse.core.commands.ParameterizedCommand.executeWithChecks(ParameterizedCommand.java:488) org.eclipse.e4.core.commands.internal.HandlerServiceImpl.executeHandler(HandlerServiceImpl.java:213) org.eclipse.ui.internal.handlers.LegacyHandlerService.executeCommand(LegacyHandlerService.java:392) org.eclipse.ui.internal.actions.CommandAction.runWithEvent(CommandAction.java:142) org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:580) org.eclipse.jface.action.ActionContributionItem.lambda$4(ActionContributionItem.java:412) org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89) で、org.eclipse.swt.widgets.Display.sendEvent(Display.java:5874) で、org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1400) で、org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:5138) で、org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:4663) で、org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1173) で、org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) でorg.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1062) で org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155) で org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:635) で org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338) で org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:559) で org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150) でorg.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:155) が org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203) org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:137) org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:107) org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:400) org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255) sun.reflect.NativeMethodAccessorImpl.invoke0(ネイティブ メソッド) sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)、java.lang.reflect.Method.invoke(Method.java:498)、org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:660)、org.eclipse.equinox.launcher.Main.basicRun(Main.java:597)、org.eclipse.equinox.launcher.Main.run(Main.java:1468)、org.eclipse.equinox.launcher.Main.main(Main.java:1441)

見つけられるものはすべて読み、可能な限り解決策を試しましたが、今のところ何もうまくいきませんでした。特に、次のスレッドの解決策を試しました。 eclipse org.eclipse.swt.SWTError: ハンドルがもうありません https://stackoverflow.com/questions/2018553/swt-no-more-handles

プラグインはインストールされておらず、複数のモニターを備えたハードウェア設定も行われておらず、エラーは私が自分で作成したプログラムとは関係ありません(ファイルを開くことさえできませんでした)。ここで提案されているように、エディターをウィンドウビルダーに変更することはできませんでした(https://stackoverflow.com/questions/15594590/eclipse-bug-unhandled-event-loop-exception-no-more-handles) Eclipse がすぐにクラッシュしてしまうためです。

どのような助けでも大歓迎です!

答え1

自宅でも同じ問題がありました。ターミナルで root として以下を実行することで解決できました。

im-config

次の2つの画面で「はい」と確認しました。

さまざまな選択肢の中から cjkv を選択しました。 選択画面

OKで確認しました

PCを再起動すると問題は解決しました。

関連情報