it-swarm.com.de

Eclipse kann keine SWT-Bibliotheken laden

Jedes Mal, wenn ich versuche, Eclipse in Ubuntu 12.04 zu öffnen, wird ein unbefriedigter Link-Fehler angezeigt, der sich nicht öffnen lässt. Ich habe vor kurzem das Java JDK und Android SDK, könnte dies das Problem sein? Ich folgte dieses Tutorial .

Hier ist die Log-Info:

!SESSION 2012-04-15 21:05:46.902 -----------------------------------------------
Eclipse.buildId=I20110613-1736
Java.version=1.7.0
Java.vendor=Oracle Corporation
BootLoader constants: OS=linux, Arch=x86_64, WS=gtk, NL=en_GB
Command-line arguments:  -os linux -ws gtk -Arch x86_64

!ENTRY org.Eclipse.osgi 4 0 2012-04-15 21:05:47.885
!MESSAGE Application error
!STACK 1
Java.lang.UnsatisfiedLinkError: Could not load SWT library. Reasons: 
no swt-gtk-3740 in Java.library.path
no swt-gtk in Java.library.path
Can't load library: /home/tom/.swt/lib/linux/x86_64/libswt-gtk-3740.so
Can't load library: /home/tom/.swt/lib/linux/x86_64/libswt-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.C.<clinit>(C.Java:21)
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)
at org.Eclipse.equinox.launcher.Main.main(Main.Java:1386)

Ich habe versucht, das Verzeichnis ~/.Eclipse Zu deinstallieren, neu zu installieren und zu entfernen, aber es funktioniert immer noch nicht

289
TomRichardson

auf meinem Ubuntu 12.04 2 bit. Ich bearbeite den Befehl zu:

ln -s /usr/lib/jni/libswt-* ~/.swt/lib/linux/x86/

Und unter Ubuntu 12.04 64 Bit versuchen Sie:

ln -s /usr/lib/jni/libswt-* ~/.swt/lib/linux/x86_64/
659
Scott

Gelöst:

Da ich Oracle Java 7 installiert hatte, wurde der Standardwert Java in Oracle Java 7 geändert, dies war jedoch erforderlich sei das Open JDK.

Öffnen Sie zum Beheben das Terminal und geben Sie Folgendes ein

Sudo update-alternatives --config Java

Daraufhin wird eine Liste der verschiedenen Java-Typen angezeigt. Wählen Sie einfach das Open JDK.

52
TomRichardson

Geben Sie einfach den Pfad zu den Bibliotheken an:

echo "-Djava.library.path=/usr/lib/jni/" >> /etc/Eclipse.ini
42
dzlatkov

In meinem Fall fehlte mir das /usr/lib/jni Verzeichnis vollständig. Behoben durch

Sudo apt-get install libswt-gtk-3-jni libswt-gtk-3-Java

Es ist nicht nötig, danach eine Verknüpfung zu erstellen. Eclipse wurde normal gestartet.

13
Trenton
 Bibliothek kann nicht geladen werden: /home/tom/.swt/lib/linux/x86_64/libswt-gtk-3740.so[.____.CDie Bibliothek kann nicht geladen werden: /home/tom/.swt /lib/linux/x86_64/libswt-gtk.so

anscheinend sollten sich die Bibliotheken unter .swt/lib/linux/x86_64/befinden. Wenn diese nicht vorhanden sind, können Sie den folgenden Befehl ausführen:

suchen Sie libswt-gtk.so

dies sollte feststellen, dass die Bibliotheken das gesamte Verzeichnis nach /home/tom/.swt/lib/linux/x86_64 kopieren

4
sherif

Ich stimme Scott zu, was er aufgelistet hat hat funktioniert. Es funktionierte jedoch nicht, es von einem beliebigen Verzeichnis aus auszuführen. Ich musste zu den /home/*/.swt/lib/linux/x86_64/ 0 Dateien cden

verzeichnis und führen Sie dann den Befehl link aus:

Für 32 Bit:

ln -s /usr/lib/jni/libswt-* ~/.swt/lib/linux/x86/

Und auf Ubuntu 12.04 64 Bit:

ln -s /usr/lib/jni/libswt-* ~/.swt/lib/linux/x86_64/
3
leroneb

Auf redhat7:

yum install gtk2 libXtst xorg-x11-fonts-Type1

erledigte den Job wegen einer swt-Abhängigkeit.

gefunden hier

3
user1767316

Wenn Sie Eclipse mit Oracle Java starten, kann Eclipse möglicherweise keine nativen Bibliotheken wie SWT- oder SVN-Bibliotheken finden. Die SWT-JNI-Bibliotheken befinden sich in/usr/lib/jni/und die SVN-JNI-Bibliotheken befinden sich in/usr/lib/x86_64-linux-gnu/jni /.

Anstatt Eclipse mit dem Befehl zu starten

Eclipse

sie können den Befehl verwenden

env LD_LIBRARY_PATH=/usr/lib/jni/:/usr/lib/x86_64-linux-gnu/jni/:$LD_LIBRARY_PATH Eclipse

um die Umgebungsvariable LD_LIBRARY_PATH an Eclipse zu übergeben. Eclipse findet die nativen Bibliotheken und wird ordnungsgemäß ausgeführt.

2
user1460856

Ich bin auf diesen Fehler gestoßen, als ich versuchte, die 32-Bit-Erstellung von Eclipse unter 64-Bit-Linux zu starten. Das Problem wurde nach der Installation des Pakets ia32-libs behoben.

1
lancha90

Ich habe das 32-Bit-JDK installiert, da ich die Fehler erhalte. Nach der Installation von JDK 64 Bit http://www.Oracle.com/technetwork/Java/javase/downloads/jdk8-downloads-2133151.html jdk-8u131-linux-x64.tar.gz (bitte 64-Bit-Version herunterladen) und 64-Bit "Eclipse-inst-linux64.tar.gz" herunterladen.

0
Shyam Gupta

Eine möglicherweise allgemeinere Methode besteht darin,

  • nicht kopflose Version des openjdk installieren,
  • installieren, Ausführen und Schließen von Eclipse.
  • deinstalliere das openjdk
  • installieren Sie das Oracle JDK
0
user1767316

Stellen Sie sicher, dass Ihre Home-Partition über ausführbare Berechtigungen verfügt. Das ist die Standardeinstellung, aber wenn Sie es ohne exec-Option mounten, wird dieser Fehler angezeigt.

0
Martin B.