无法在Ubuntu 12.04中打开Eclipse - java.lang.UnsatisfiedLinkError:无法加载SWT库

Ram*_*sad 11 eclipse swt ubuntu-12.04

我新安装了Ubuntu 12.04.我也安装了Java 7.我尝试安装eclipse-java-indigo-SR2-linux-gtk.tar.gz.我在/ home/ramprabhu位置提取了这个文件.然后我尝试运行eclipse可执行文件.我看到日志文件时出错了.

我的日志文件:

 !SESSION 2012-06-10 22:47:35.959 -----------------------------------------------
eclipse.buildId=M20120208-0800
java.version=1.7.0_04
java.vendor=Oracle Corporation
BootLoader constants: OS=linux, ARCH=x86, WS=gtk, NL=en_US
Framework arguments:  -product org.eclipse.epp.package.java.product
Command-line arguments:  -os linux -ws gtk -arch x86 -product org.eclipse.epp.package.java.product

!ENTRY org.eclipse.osgi 4 0 2012-06-10 22:47:36.757
!MESSAGE Application error
!STACK 1
java.lang.UnsatisfiedLinkError: Could not load SWT library. Reasons: 
    /home/ramprabhu/eclipse/configuration/org.eclipse.osgi/bundles/247/1/.cp/libswt-pi-gtk-3740.so: libXtst.so.6: cannot open shared object file: No such file or directory
    no swt-pi-gtk in java.library.path
    /home/ramprabhu/.swt/lib/linux/x86/libswt-pi-gtk-3740.so: /home/ramprabhu/.swt/lib/linux/x86/libswt-pi-gtk-3740.so: wrong ELF class: ELFCLASS64 (Possible cause: architecture word width mismatch)
    Can't load library: /home/ramprabhu/.swt/lib/linux/x86/libswt-pi-gtk.so

    at org.eclipse.swt.internal.Library.loadLibrary(Library.java:285)
    at org.eclipse.swt.internal.Library.loadLibrary(Library.java:194)
    at org.eclipse.swt.internal.gtk.OS.<clinit>(OS.java:22)
    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.<clinit>(Display.java:132)
    at org.eclipse.ui.internal.Workbench.createDisplay(Workbench.java:695)
    at org.eclipse.ui.PlatformUI.createDisplay(PlatformUI.java:161)
    at org.eclipse.ui.internal.ide.application.IDEApplication.createDisplay(IDEApplication.java:153)
    at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:95)
    at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:344)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179)
    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:601)
    at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:622)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:577)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1410)
Run Code Online (Sandbox Code Playgroud)

我无法运行eclipse.如何解决这个问题并运行eclipse.

小智 55

尝试使用以下命令

  • 64位系统: ln -s /usr/lib/jni/libswt-* ~/.swt/lib/linux/x86_64/

  • 32位系统: ln -s /usr/lib/jni/libswt-* ~/.swt/lib/linux/x86/


Rak*_*kib 7

通过复制libswt文件来解决这个问题~/.swt/lib/linux/x86(or x86_64)

对于32位:

/bin/cp /usr/lib/jni/libswt-* ~/.swt/lib/linux/x86/
Run Code Online (Sandbox Code Playgroud)

对于64位:

/bin/cp /usr/lib/jni/libswt-* ~/.swt/lib/linux/x86_64/
Run Code Online (Sandbox Code Playgroud)


Dmi*_*lov 5

当我试图在64位linux下启动32位Eclipse时,我遇到了这个错误.安装ia32-libs软件包后问题得以解决.


And*_*ell 3

您正在混合 64 位和 32 位。下载 64 位版本的 Eclipse 并使用 64 位版本的 Java 7。