10

我提供了 Linux SWT jar 并将我的应用程序打包到 Eclipse 中,以将 swt.jar 包含在我的应用程序的 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

5 回答 5

10

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

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
于 2014-01-31T17:07:30.303 回答
7

在我的 64 位 Debian Wheezy/测试中,我通过这样做解决了它

apt-get install ia32-libs-gtk

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

于 2013-02-21T13:59:50.650 回答
4

使用最新的 Ubuntu (18.10),安装libswt-gtk-3-java修复它。为此,请从终端键入以下命令: sudo apt install libswt-gtk-3-java

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

于 2018-12-31T21:07:27.483 回答
0

对于更新的版本,如果它说它 can't find libgtk-3.so.0,那么您需要的明显包apt-get installlibgtk-3-0。但是,在 Ubuntu Zesty (17.04) 上似乎没有这样的包,所以我需要切换到 Xenial (16.04)。巧妙的,以后也应该工作。

此外,没有它,图形 Eclipse 安装程序将无法工作。

于 2018-05-02T12:28:57.890 回答
0

这在 i386/debian 和 docker 上对我有用:

apt-get install libgtk2.0-0 
于 2021-12-18T17:42:40.067 回答