org.eclipse.swt.SWTError: 没有更多句柄 [gtk_init_check() failed]

Posted

技术标签:

【中文标题】org.eclipse.swt.SWTError: 没有更多句柄 [gtk_init_check() failed]【英文标题】:org.eclipse.swt.SWTError: No more handles [gtk_init_check() failed] 【发布时间】:2021-03-03 21:10:07 【问题描述】:

我正在尝试在 Linux (ubuntu 18.04) 上使用 eclipse MAT 工具并收到以下错误:

root@xxx/var/lib/jenkins/workspace/Heap_Analysis/mat# ./MemoryAnalyzer
Unable to init server: Could not connect: Connection refused
Unable to init server: Could not connect: Connection refused
MemoryAnalyzer: Cannot open display:
MemoryAnalyzer:
An error has occurred. See the log file
/var/lib/jenkins/workspace/Heap_Analysis/mat/configuration/1614805252582.log.
root@xxxx:/var/lib/jenkins/workspace/Heap_Analysis/mat# cat /var/lib/jenkins/workspace/Heap_Analysis/mat/configuration/1614805252582.log
!SESSION 2021-03-03 21:00:52.492 -----------------------------------------------
eclipse.buildId=unknown
java.version=11.0.10
java.vendor=Ubuntu
BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en
Command-line arguments:  -os linux -ws gtk -arch x86_64

!ENTRY org.eclipse.osgi 4 0 2021-03-03 21:00:53.259
!MESSAGE Application error
!STACK 1
org.eclipse.swt.SWTError: No more handles [gtk_init_check() failed]
        at org.eclipse.swt.SWT.error(SWT.java:4749)
        at org.eclipse.swt.widgets.Display.createDisplay(Display.java:1130)
        at org.eclipse.swt.widgets.Display.create(Display.java:1070)
        at org.eclipse.swt.graphics.Device.<init>(Device.java:175)
        at org.eclipse.swt.widgets.Display.<init>(Display.java:636)
        at org.eclipse.swt.widgets.Display.<init>(Display.java:627)

如果你们知道任何解决问题的方法,将不胜感激。

已经解决了 *** 上的所有类似问题以及以下链接: https://unix.stackexchange.com/questions/94497/org-eclipse-swt-swterror-no-more-handles-gtk-init-check-failed-while-runnin

但没有任何帮助。

【问题讨论】:

【参考方案1】:

我自己没见过这个问题,但是:

    检查您是否安装了libwebkit2gtk-4.0 检查 DISPLAY 是否设置正确 检查您是否可以让其他 X 应用程序工作 试用最新的内存分析器 1.12 版,因为它基于 Eclipse 的更新版本,2021-06 我可以使用基于 Ubuntu 18.04 的映像在 Windows 上的 Docker 下运行 MAT,因此 Ubuntu 18.04 可以工作:Running MAT under Docker

【讨论】:

以上是关于org.eclipse.swt.SWTError: 没有更多句柄 [gtk_init_check() failed]的主要内容,如果未能解决你的问题,请参考以下文章

Sleak (SWT & RCP) : 设备没有跟踪资源分配 (eclipse 4.3)

kettle在linux启动spoon.sh报错

Atitit 解决Unhandled event loop exception错误的办法