11

我新安装了 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)

我无法运行日食。如何解决这个问题并运行eclipse。

4

7 回答 7

55

尝试使用以下命令

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

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

于 2012-06-24T19:45:54.497 回答
7

通过将libswt文件复制到~/.swt/lib/linux/x86(or x86_64)

对于 32 位:

/bin/cp /usr/lib/jni/libswt-* ~/.swt/lib/linux/x86/

对于 64 位:

/bin/cp /usr/lib/jni/libswt-* ~/.swt/lib/linux/x86_64/
于 2012-06-27T11:14:09.610 回答
5

当我尝试在 64 位 linux 下启动 Eclipse 的 32 位构建时遇到了这个错误。安装ia32-libs包后问题得到解决。

于 2013-04-07T16:30:08.793 回答
4

在为 Blackberry 10 开发安装 QNX Momentic IDE(它基于 32 位 eclipse 发行版)后,我遇到了这个问题。我没有机会安装 ia32-libs 因为

$ sudo apt-get install ia32-libs 读取包列表...完成 构建依赖树
读取状态信息...完成 包 ia32-libs 不可用,但被另一个包引用。这可能意味着该软件包丢失、已过时或仅可从其他来源获得但是以下软件包将替换它: lib32asound2 lib32z1 lib32ncurses5 lib32bz2-1.0

E: 包 'ia32-libs' 没有安装候选

我在这篇文章中找到了解决方案

sudo aptitude install libc6:i386 libstdc++6:i386 libatk1.0-0:i386 libc6:i386 libcairo2:i386 libexpat1:i386 libffi6:i386 libfontconfig1:i386 libfreetype6:i386 libgcc1:i386 libgdk-pixbuf2.0-0:i386 libglib2 .0-0:i386 libgtk2.0-0:i386 libpango1.0-0:i386 libpcre3:i386 libpixman-1-0:i386 libpng12-0:i386 libselinux1:i386 libstdc++6:i386 libx11-6:i386 libxau6 :i386 libxcb1:i386 libxcb-render0:i386 libxcb-shm0:i386 libxcomposite1:i386 libxcursor1:i386 libxdamage1:i386 libxdmcp6:i386 libxext6:i386 libxfixes3:i386 libxi6:i386 libxinerama1:i386 libxrandr2:i386 libxrender1:i386 libxtst6:i386 zlib1g: i386

我相信这个解决方案也有助于简单的 32 位 eclipse

于 2013-10-25T19:11:09.413 回答
3

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

于 2012-06-10T17:44:26.570 回答
3

这是我解决问题的方法 aptitude search libswt-gtk

然后sudo apt-get install没有安装的 在此处输入图像描述

于 2015-05-29T16:52:25.123 回答
0

我的 64 位系统也有同样的问题,ln 解决方案有效,神奇,64 位系统:ln -s /usr/lib/jni/libswt-* ~/.swt/lib/linux/x86_64/

于 2013-05-17T08:51:13.287 回答