Centos7安装Eclipse报错: Could not load SWT library以及No more handles [gtk_init_check() failed]

Centos7中安装eclipse报错:

org.eclipse.m2e.logback.configuration: The org.eclipse.m2e.logback.configuration bundle was activated before the state location was initialized.  Will retry after the state location is initialized.
Eclipse:
An error has occurred. See the log file
/home/softwares/eclipse/configuration/1492090610671.log.

查看1492090610671.log:

java.lang.UnsatisfiedLinkError: Could not load SWT library. Reasons: 
	/home/softwares/eclipse/configuration/org.eclipse.osgi/335/0/.cp/libswt-pi-gtk-4430.so: libgtk-x11-2.0.so.0: cannot open shared object file: No such file or directory
	no swt-pi-gtk in java.library.path
	/root/.swt/lib/linux/x86_64/libswt-pi-gtk-4430.so: libgtk-x11-2.0.so.0: cannot open shared object file: No such file or directory
	Can't load library: /root/.swt/lib/linux/x86_64/libswt-pi-gtk.so

	at org.eclipse.swt.internal.Library.loadLibrary(Library.java:327)
	at org.eclipse.swt.internal.Library.loadLibrary(Library.java:236)
	at org.eclipse.swt.internal.gtk.OS.(OS.java:39)
	at org.eclipse.swt.internal.Converter.wcsToMbcs(Converter.java:63)
	at org.eclipse.swt.internal.Converter.wcsToMbcs(Converter.java:54)
	at org.eclipse.swt.widgets.Display.(Display.java:135)
	at org.eclipse.ui.internal.Workbench.createDisplay(Workbench.java:716)
	at org.eclipse.ui.PlatformUI.createDisplay(PlatformUI.java:162)
	at org.eclipse.ui.internal.ide.application.IDEApplication.createDisplay(IDEApplication.java:165)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:107)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:606)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:648)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:603)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1465)
	at org.eclipse.equinox.launcher.Main.main(Main.java:1438)

GTK是一个图形界面工具包,安装了gtk2、libgtk-x11-2.0.so.0之后又报错:

org.eclipse.swt.SWTError: No more handles [gtk_init_check() failed]
	at org.eclipse.swt.SWT.error(SWT.java:4467)
	at org.eclipse.swt.widgets.Display.createDisplay(Display.java:934)
	at org.eclipse.swt.widgets.Display.create(Display.java:918)
	at org.eclipse.swt.graphics.Device.(Device.java:157)
	at org.eclipse.swt.widgets.Display.(Display.java:514)
	at org.eclipse.swt.widgets.Display.(Display.java:505)
	at org.eclipse.ui.internal.Workbench.createDisplay(Workbench.java:732)
	at org.eclipse.ui.PlatformUI.createDisplay(PlatformUI.java:162)
	at org.eclipse.ui.internal.ide.application.IDEApplication.createDisplay(IDEApplication.java:165)
	at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:107)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:606)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:648)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:603)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1465)
	at org.eclipse.equinox.launcher.Main.main(Main.java:1438)

应该是自己没有桌面系统的原因,装了GNOME Desktop后一切正常,Eclipse能够正常启动,总之遇到任何错误都是根据错误信息一步步来。

Centos7安装Eclipse报错: Could not load SWT library以及No more handles [gtk_init_check() failed]_第1张图片

你可能感兴趣的:(Eclipse)