java中的JNI映射结构

时间:2010-10-25 13:40:47

标签: java java-native-interface

我有一个dll,它有一个方法,例如void abc(meth* myMeth)和一个结构

struct meth
{
  int a;
  char b[255]; 
} 

上面的代码用c编写。我需要通过JNI将它映射到Java,我被困住了。如何将方法abc的引用作为Java方法的指针传递,如何设置ab的值,然后再次传回Java? 需要紧急帮助....谢谢

2 个答案:

答案 0 :(得分:2)

我不知道这是否适合你,但考虑使用一些更高级别的框架来管理JNI的低级细节。两个选项:

我个人使用过JNAerator,发现它真的很有帮助。

答案 1 :(得分:1)

Java类和C结构之间没有映射(不确定JNA如何处理它);你必须创建一个与C结构具有相同成员的Java类,并编写C函数以在它们之间进行转换。