我是否需要以其他方式导出.jar才能在不同平台上运行?

时间:2018-06-29 15:02:39

标签: java eclipse swt portability

我有一个.jar并已通过Eclipse在Windows上导出。它运行完美,现在我希望在Solaris 10机器上运行它。

但是,当我尝试在Solaris上运行它时,我收到java.lan.UnsatisifiedLinkError的抱怨是它无法加载SWT库。

Exception in thread "main" java.lang.UnsatisifiedLinkError: Could not load SWT library.  Reasons:
no swt-win32-3650 in java.library.path
no swt-win32 in java.library.path
Can't load library: /var/tmp/swtlib-64/libswt-win32-3650.so
Can't load library: /var/tmp/swtlib-64/libswt-win32-3650.so

为什么Java在寻找libswt-win32库?我创建.jar错误吗?

.jar上构建时,我是否需要以不同的方式导出Windows,因为它现在打算从Solaris运行?

1 个答案:

答案 0 :(得分:1)

SWT具有本机组件。我认为您正在使用其中的某些内容以将其包括在内。您将需要在Solaris系统上安装等效的本机库。

在这里查看解决方案,它在Ubuntu上,但是问题相似:

Eclipse cannot load SWT libraries