2012-06-10 5 views
11

Ich habe Ubuntu 12.04 neu installiert. Außerdem habe ich Java 7 installiert. Ich versuche, eclipse-java-indigo-SR2-linux-gtk.tar.gz zu installieren. Ich habe diese Datei in/home/ramprabhu location extrahiert. Dann versuche ich, ausführbare Eclipse-Datei auszuführen. Ich habe einen Fehler wie in der Protokolldatei angezeigt.Kann Eclipse in Ubuntu 12.04 nicht öffnen - java.lang.UnsatisfiedLinkError: SWT-Bibliothek konnte nicht geladen werden

Meine Log-Datei:

!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) 

Ich bin nicht in der Lage Eclipse zu laufen. Wie man dieses Problem löst und Eclipse ausführt.

Antwort

3

Sie mischen 64-Bit und 32-Bit. Laden Sie die 64-Bit-Version von Eclipse und verwenden Sie die 64-Bit-Version von Java 7.

+0

Wie kann ich verstehen, ob Eclipse 32 Bit oder Java 32 Bit ist? Ich benutzte synaptic, um jdk7 aus dem webupd8 ppa zu installieren und Eclipse zu installieren. –

+1

läuft 'java -version' zeigt Ihnen 32-Bit oder 64-Bit-Modus. Eine schnelle Möglichkeit zu finden, ob Eclipse 32 oder 64 Bit ist, ist 'find. -name 'org.eclipse.swt * .jar'' und sehen, ob es x86_64 für swt –

+1

zur Ausführung 'java -version' zurückgibt sagt: ' Java-Version "1.6.0_26 "- Java (TM) SE Laufzeitumgebung (Build 1.6.0_26-b03-383-11M3720) - Java HotSpot (TM) Client VM (Build 20.1-b02-383, gemischter Modus)' Also, ist das 32bit oder 64bit? –

55

Versuchen Sie es mit dem folgenden Befehl

  • 64 Bits System: ln -s /usr/lib/jni/libswt-* ~/.swt/lib/linux/x86_64/

  • 32 Bits System: ln -s /usr/lib/jni/libswt-* ~/.swt/lib/linux/x86/

+0

Arbeitete wie ein Charme - Thnx –

+0

Hatte das gleiche Problem und für mein 32-Bit-System nur eine Kopie Paste des obigen Befehls gespeichert! Danke! – Vagelism

+0

arbeitete für mich auch. Danke – Kanishka

7

es funktionierte durch Kopieren der libswt Dateien ~/.swt/lib/linux/x86(or x86_64) aus

für 32 Bit:

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

für 64 Bit:

/bin/cp /usr/lib/jni/libswt-* ~/.swt/lib/linux/x86_64/ 
+0

Danke. Es hat funktioniert :) – Stranger

5

stieß ich auf diesen Fehler, wenn versucht, 32-Bit-Version von Eclipse zu starten unter 64-Bit-Linux. Das Problem wurde nach der Installation ia32-libs Paket gelöst.

0

hatte das gleiche Problem mit meinem 64bit System, die ln ist Lösung, Magie, 64 Bits System: ln -s/usr/lib/jni/libswt- * ~/.swt/lib/linux/x86_64/

4

Ich konfrontiert mit diesem Problem nach der Installation von QNX Momentic IDE (es auf 32-Bit-Eclipse-Verteilung basiert) für Blackberry 10 Entwicklung. Ich habe keine Chance, ia32-libs zu installieren, da

$ sudo apt-get install ia32-libs Reading package lists... Done Building dependency tree
Reading state information... Done Package ia32-libs is not available, but is referred to by another package. This may mean that the package is missing, has been obsoleted, or is only available from another source However the following packages replace it: lib32asound2 lib32z1 lib32ncurses5 lib32bz2-1.0

E: Package 'ia32-libs' has no installation candidate

I-Lösung

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

in this post fand ich bin sicher, dass diese Lösung mit einfachen 32-Bit-Eclipse

+0

Danke Überprüfen Sie das Fehlerprotokoll, um andere Abhängigkeiten zu sehen. – boring

3

auch hier helfen ist, wie ich das Problem gelöst habe aptitude search libswt-gtk

Dann sudo apt-get install die nicht installiert enter image description here

+0

Sie sind ein Lebensretter! Danke! – 11101101b