自己通过javah生成的.h文件,然后使用vc2005生成dll。
通过main函数进行调用时可以成功调用,此时dll放在jre\bin下。
通过servlet调用时,出错java.lang.UnsatisfiedLinkError: no DemoDLL in java.library.path
在servlet中执行System.out.println(System.getProperty("java.library.path"));输出C:\Program Files\Java\jdk1.6.0_02\bin;E:\Program Files\Apache Software Foundation\Tomcat 5.5\bin
于是将dll放到jdk\bin目录下,此时报错java.lang.UnsatisfiedLinkError: C:\Program Files\Java\jdk1.6.0_02\bin\DemoDLL.dll: Can't find dependent libraries
请问各位达人,为何会出现这样的情况?如何解决?

解决方案 »

  1.   

    我不放到jdk\bin下 报错:no DemoDLL in java.library.path 
    放到jdk\bin下的错误是 Can't find dependent libraries 
    应该还是找到路径了吧?
      

  2.   

    dll 统统放到windows/system32下试试
      

  3.   

    请将DLL,放到你项目的更目录下..比如:text是ROOT..那DLL的路径是,text:/dll
      

  4.   

    回复injuer:
    放到项目下,还是有相同的问题
      

  5.   

    应该是依赖问题,比如你的a.dll依赖于b.dll那么你只加载了a.dll就会抱着个错