我正在尝试在Windows CE5 Professional设备上部署我们的eRCP(嵌入式Rich Client Platform)应用程序。虽然eRCP演示应用程序在启动我们的应用程序时在J9 VM上运行良好,但我得到以下异常:
!ENTRY org.eclipse.osgi 4 0 2008-09-24 11:01:15.088
!MESSAGE An error occurred while automatically activating bundle org.eclipse.ercp.swt (63).
!STACK 0
org.osgi.framework.BundleException: Exception in org.eclipse.ercp.swt.Activator.start() of bundle org.eclipse.ercp.swt.
[...]
Caused by: java.lang.UnsatisfiedLinkError: \eRCP\plugins\org.eclipse.ercp.swt.wince5_1.2.0\os\win32\arm\eswt-converged.dll (Operation Failed: 14)
at java.lang.ClassLoader.loadLibraryWithPath(Unknown Source)
at java.lang.ClassLoader.loadLibraryWithClassLoader(Unknown Source)
at java.lang.System.loadLibrary(Unknown Source)
at org.eclipse.ercp.swt.Activator.start(Unknown Source)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(Unknown Source)
at java.security.AccessController.doPrivileged(Unknown Source)
... 33 more
我在网上找不到什么“操作失败:14”的含义。我想这可能是本机函数的一些返回值,但不能确定。 DLL 出现在指定的位置,我也试图将它放在\ j9 \ bin目录中。
答案 0 :(得分:2)
是的,java异常包装来自JNI调用的本机异常,该调用失败。由于某种原因,DLL可能无法在您的设备上正确加载或执行。错误的操作系统版本? DLL文件损坏了吗?不正确的读/执行权限?很多可能的原因。
编辑 - 似乎其他人有类似的问题。 SWT错误可能吗?看看你是否可以从开发者那里得到任何东西: http://www.eclipsezone.com/eclipse/forums/t111726.html