[英]Java Native Interface with any arbitrary C code
我有一个提供的.dll,我需要使用java与它进行交互。
我是否必须重写C以使用jni.h中提供的JNI类型? 如java sun的jni示例所示。 否则,我如何声明我的java函数传递和接收指针的本机函数?
谢谢
您可能会发现JNA很有用
“JNA为Java程序提供了对本机共享库(Windows上的DLL)的轻松访问,而无需编写任何东西,只需要Java代码 - 不需要JNI或本机代码。此功能可与Windows的Platform / Invoke和Python的ctypes相媲美。访问在运行时是动态的没有代码生成。“
在某种程度上,是的。
大多数情况下,您只需编写一个小的“包装器”DLL,其函数可以进行类型转换并委托给“真正的”DLL中的相应函数。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.