首页 开发语言 Java 正文内容

java引入dll java引入dll文件

钟逸 Java 2024-05-08 00:42:07 5

怎样能在Java中调用C语言生成的DLL文件

首先创建Java文件 HelloJni.java ,并创建native方法。编译Java文件并生成java头文件。创建C语言文件,HelloWorld.c。生成动态链接库文件 libhello.so。设置动态链接库文件的目录。

对于已生成的.h头文件,C/C++所需要做的,就是把它的各个方法具体的实现。然后编译连接成库文件即可。再把库文件拷贝到JAVA程序的路径下面,就可以用JAVA调用C/C++所实现的功能了。接上例子。

如果你愿意采用COM组件的方式,可以一试!JAVA有COM4Java的组件(我没记错的话)。

第一,jni方式调用c接口。通过将c语言接口封装为jni的方式直接供java语言调用,这个可以说是最惯用的方式。第二,jna方式调用c接口。jna也是其中一种调用c接口的方式。使用时可以加载动态库.dll或.so,然后调用库中的接口。

请问怎么把.dll文件加入我的java工程,并能使用里面的方法?

1、一般那种c#的dll是java不能直接调用的,但C\C++可以,你可以使用JNI。

2、首先dll文件必须是通过包含jni做的头文件(定义java相应的方法,然后在dll中实现),才能使用。

3、在JAVA程序中,首先需要在类中声明所调用的库名称,如下:static { System.loadLibrary(“goodluck”);} 在这里,库的扩展名字可以不用写出来,究竟是DLL还是SO,由系统自己判断。

4、编译Java工程并生成VC要用到的头文件 1 现 在打开cmd,先进到当前java文件所在的目录,用cd xxx\xxx 命令即可,返回上一级目录用cd..命令(注意后面的俩点)。

java加载dll文件

1、首先dll文件必须是通过包含jni做的头文件(定义java相应的方法,然后在dll中实现),才能使用。

2、把所有的dll先都放到根目录下试试,看看是否能加载。如果放到目录下可能需要设置下java.lib.path,如果不能那就是dll有问题,或者缺少其他dll。还有可能是java的接口没有定义对。

3、java没法直接读,只能先用C++写一个读取该dll内容的过程,按JNI规范封装成dll,然后java加载这个dll执行其中的函数。

文章目录
    搜索