如何在Ubuntu 16.04中解决java.lang.UnsatisfiedLinkError

时间:2017-10-21 19:37:08

标签: java ubuntu-16.04 unsatisfiedlinkerror

我试图在Ubuntu 16.04上启动WindRiver Workbench但是在选择我的工作区时,我收到一条错误消息,该消息指的是一个包含java错误的文本文件,如下所示:

!SESSION 2017-10-21 12:46:56.994 -----------------------------------------------
eclipse.buildId=M20130131-0800/WB20151117-1158
java.version=1.6.0_21
java.vendor=Sun Microsystems Inc.
BootLoader constants: OS=linux, ARCH=x86, WS=gtk, NL=en_CA
Command-line arguments:  -os linux -ws gtk -arch x86

!ENTRY org.eclipse.osgi 4 0 2017-10-21 12:48:56.765
!MESSAGE Application error
!STACK 1
java.lang.UnsatisfiedLinkError: com.windriver.core.runtime.jni.Env.setEnv(Ljava/lang/String;Ljava/lang/String;)I
        at com.windriver.core.runtime.jni.Env.setEnv(Native Method)
        at com.windriver.ide.common.core.installregistry.WREnv.setSystemEnv(WREnv.java:805)
        at com.windriver.ide.common.core.installregistry.WRInstallRegistry.initWorkbenchEnvironment(WRInstallRegistry.java:631)
        at com.windriver.ide.common.core.installregistry.WRInstallRegistry.init(WRInstallRegistry.java:484)
        at com.windriver.ide.common.core.installregistry.WRInstallRegistry.getInstance(WRInstallRegistry.java:550)
        at com.windriver.ide.application.UnifiedSWTSwingApplication.checkPreconditions(UnifiedSWTSwingApplication.java:148)
        at com.windriver.ide.application.CopyOfIDEApplication.start(CopyOfIDEApplication.java:136)
        at com.windriver.ide.application.UnifiedSWTSwingApplication.access$2(UnifiedSWTSwingApplication.java:1)
        at com.windriver.ide.application.UnifiedSWTSwingApplication.start(UnifiedSWTSwingApplication.java:70)
        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:353)
        at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:180)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:629)
        at org.eclipse.equinox.launcher.Main.basicRun(Main.java:584)
        at org.eclipse.equinox.launcher.Main.run(Main.java:1438)
        at org.eclipse.equinox.launcher.Main.main(Main.java:1414)
        at org.eclipse.equinox.launcher.WRWBMain.main(WRWBMain.java:37)

我已根据Error message when executing WindRiver workbench - host: Ubuntu 14.04

中的建议安装了所有软件包
sudo apt-get install libgtk2.0-0:i386
sudo apt-get install libxtst-dev
sudo apt-get install libxtst-dev:i386
sudo apt-get install gtk2-engines-murrine:i386
sudo apt-get install lib32stdc++6
sudo apt-get install libxpm4:i386
sudo apt-get install libuuid1:i386 

但仍然出现上述错误。

通过上面的软件包,我在之前的安装(14.04)上运行正常,但这应该在16.04中运行,也不应该这样做吗?这里有什么问题?我如何找到它的底部?

1 个答案:

答案 0 :(得分:2)

正如How to resolve java.lang.UnsatisfiedLinkError in Ubuntu 16.04中所述,您必须在stdutils.so上运行ldd。 就我而言,我必须安装libpangox-1.0-0:i386libpangoxft-1.0-0:i386