2013-09-27 43 views
0

我正在运行一个现有的应用程序,应该理想的工作正常。 但是,当我在我的机器上运行的代码下面的代码抛出一个异常NoClassDefFoundError:无法初始化类com.jacob.com.ComThread

ComThread.InitMTA(); 

异常java.lang.NoClassDefFoundError: Could not initialize class com.jacob.com.ComThread

我有jacob.jar在我的类路径(WEB-INF \ lib中),并且还放置了相应的DLL在我的Windows System32文件夹中。请帮忙。

另外我的Windows是64位,但我运行的是Java的32位版本(用于项目和eclipse)。

回答

0

您需要更改jacob.jar版本,1.11版本试试

+0

硬编码路径的dll我使用1.17版本,它仍然没有工作 –

+0

尝试在tomcat的dll文件试图/箱 – sunysen

+0

我试图把dll文件放在tomcat/bin中,但它没有工作 –

0

我最近也遇到了这个问题。这是jacob dll找不到时的例外情况。它实际上将一个UnsatisfiedLinkError引入静态初始化程序中,但直到您尝试加载其静态初始化程序失败的类时才会影响您。所需的dll(32或64位)版本需要与JVM匹配。您有几种选择:

  1. 如果你正在使用的东西像Eclipse,然后把该dll放在类路径中或添加到您的Eclipse运行配置与您的DLL的位置另一个类路径条目。
  2. 如果您使用webstart,那么您需要使用包含dll的jar的nativelib条目。
  3. 添加您的DLL的位置到JVM使用java.library.path
  4. 可以使用jacob.dll.path
相关问题