抛出的违例是:
java.lang.UnsatisfiedLinkError

解决方案 »

  1.   

    呵呵,说来说去有碰到包名的问题了。
    这和java编译器寻找包的机制有关,在命令提示行窗口编译一个java文件可以不需要指出包的路径,在该文件的当前文件路径下进行编译就可以了。但是当你要运行它,就必须退到你包的路径的上一级进行运行(敲入java 包名.文件名)才可以,当然也可以设置classpath来解决这个问题。
    不过在jni中,这只是其中的一个问题,如果你在使用javah生成.h文件时,没有在包名上一级来编译.h文件,也能成功,但在运行的时候就会出错,在.h文件中可以看见相应的信息,这点也是要注意的。
    你的违例就是找不到dll文件出错,你可以根据我的意见再试试。谢谢。
      

  2.   

    简单,加上包名后重新生成.h文件,再重新编译你的DLL,就好了。