我的一个类,这个类里有一个main方法,在main方法里调用了DLL里的函数,执行的话没有问题。
但如果我在这个类里加上一个包名,再执行的话,就会出错。报那个DLL里的函数找不着了。

解决方案 »

  1.   

    如果你用的是JNI的话,可能是dll中头文件的问题
    比如类的全名com.mydll.MyNativeDll
    在c的头文件的方法名也要写成 如: com_mydll_MyNativeDll.xxMethod
      

  2.   

    dll要放在java的类载入器能找到的地方,比如classpath指定的地方。
      

  3.   

    搞不好要按JNI的规则重新写一个dll调用原先的dll。