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

问题描述

我正在尝试在 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)

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

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

但没有任何帮助。

解决方法

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

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

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...