Ubuntu:SWT App无法加载GTK库

时间:2012-11-29 16:48:38

标签: java linux ubuntu jar swt

我提供了Linux SWT jar并在Eclipse中打包我的应用程序,将swt.jar包含在我的app的jar中。当我尝试在Ubuntu上运行它时,我收到以下错误文本(仅发布原因):

  

引起:java.lang.UnsatisfiedLinkError:无法加载SWT库。原因:

     

java.library.path中没有swt-pi-gtk-4234

     

java.library.path中没有swt-pi-gtk

     

/home/nifty/.swt/lib/linux/x86/libswt-pi-gtk-4234.so:libgtk-x11-2.0.so.0:无法打开共享对象文件:没有这样的文件或目录

     

无法加载库:/home/nifty/.swt/lib/linux/x86/libswt-pi-gtk.so

这表明它无法加载GTK文件,但除此之外的任何东西,我都不知所措。我只是用Ubuntu测试我的应用程序,所以我知道的很少。

4 个答案:

答案 0 :(得分:9)

在我的64位Debian Wheezy /测试中,我通过

解决了它
apt-get install ia32-libs-gtk

http://www.eclipse.org/forums/index.php/t/262868/)。如果您的系统不是64位系统,则此建议不适用。

答案 1 :(得分:9)

以下是我在Ubuntu 13.10 x86_64上修复丢失的lib的方法:

java.lang.UnsatisfiedLinkError:无法加载SWT库。原因:     /home/ywu/.eclipse/473605238/configuration/org.eclipse.osgi/bundles/361/1/.cp/libswt-pi-gtk-4236.so:libgtk-x11-2.0.so.0:无法打开共享目标文件:没有这样的文件或目录

ywu@ywu-HP-8100:~$ aptitude search libgtk2.0-0
    i   libgtk2.0-0                   - GTK+ graphical user interface library                                                         
    p   libgtk2.0-0:i386              - GTK+ graphical user interface library
ywu@ywu-HP-8100:~$ sudo apt-get install libgtk2.0-0:i386

答案 2 :(得分:1)

在最新的Ubuntu(18.10)中,安装libswt-gtk-3-java对其进行了修复。 为此,请从终端输入以下命令: sudo apt install libswt-gtk-3-java

对于最新版本,我建议以下链接: https://packages.ubuntu.com/search?keywords=swt-gtk

答案 3 :(得分:0)

对于更新的版本,如果它说找不到libgtk-3.so.0,则apt-get install所需的明显包是libgtk-3-0。然而,在Ubuntu Zesty(17.04)似乎没有这样的软件包,所以我需要切换到Xenial(16.04)。狡猾的,后来也应该工作。

此外,graphical Eclipse Installer在没有此功能的情况下无法工作。