Не удается открыть Eclipse в Ubuntu 12.04-java.ленг.UnsatisfiedLinkError: не удалось загрузить библиотеку SWT

Я установил Ubuntu 12.04 недавно. Также я установил Java 7. Я пытаюсь установить eclipse-java-indigo-SR2-linux-gtk.смола.ГЗ. я извлек этот файл в/home / ramprabhu location. Затем я пытаюсь запустить исполняемый файл 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. Как решить эту проблему и запустить eclipse.

7 ответов


вы смешиваете 64-бит и 32-бит. Загрузите 64-разрядную версию Eclipse и используйте 64-разрядную версию Java 7.


попробуйте выполнить следующую команду

  • Система 64 Бит: ln -s /usr/lib/jni/libswt-* ~/.swt/lib/linux/x86_64/

  • Система 32 Битов:ln -s /usr/lib/jni/libswt-* ~/.swt/lib/linux/x86/


разработал его, скопировав 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/

Я столкнулся с этой ошибкой при попытке запустить 32-битную сборку Eclipse под 64-битным linux. Проблема была решена после установки ia32-libs пакета.


Я столкнулся с этой проблемой после установки QNX Momentic IDE (он основан на 32-разрядном дистрибутиве eclipse) для разработки Blackberry 10. У меня нет возможности установить ia32-libs, потому что

$ sudo apt-get install ia32-libs Чтение списков пакетов... Сделанный Построение дерева зависимостей
Чтение информации о состоянии... Сделанный Пакет ia32-libs недоступен, но на него ссылается другой пакет. Это может означать, что пакет отсутствует, устарел уже, или доступен только из другого источника Однако следующие пакеты заменяют его: lib32asound2 lib32z1 lib32ncurses5 lib32bz2-1.0

E: пакет 'ia32-libs' не имеет кандидата на установку

Я нашел решение в этот пост

судо способность установки пакетов libc6:i386, так с libstdc++6:i386 с libatk1.0-0:i386 с пакетом libc6:i386 в libcairo2:libexpat1 для i386:i386 в libffi6:libfontconfig1 для i386:i386 в libfreetype6:libgcc1 для i386: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:libxcb1 для i386:i386, так libxcb-render0:для i386 libxcb-shm0:libxcomposite1 для i386:i386, так libxcursor1:libxdamage1 для i386:i386, так libxdmcp6:libxext6 для i386:i386, так libxfixes3:libxi6 для i386:i386, так libxinerama1:libxrandr2 для i386:i386, так libxrender1:libxtst6 для i386:i386, так zlib1g:для i386

Я уверен, что это решение поможет простой 32-битное затмение также


вот как я решил вопрос aptitude search libswt-gtk

затем sudo apt-get install не установлены enter image description here


была такая же проблема с моей 64-битной системой, решение ln работает, магия, Система 64 битов: ln-s /usr/lib/jni/libswt -*~/.свт/Либ/ОС Linux/x86_64 с/