【问题标题】:JNI mapping structure in javajava中的JNI映射结构
【发布时间】:2011-04-30 05:32:05
【问题描述】:

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

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

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

【问题讨论】:

标签: java java-native-interface


【解决方案1】:

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

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

【讨论】:

    【解决方案2】:

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

    【讨论】:

    • @lhballoti...我已经完成了这个过程,我认为它映射得很好。
    猜你喜欢
    • 2012-05-09
    • 1970-01-01
    • 1970-01-01
    • 2012-11-26
    • 1970-01-01
    • 2021-04-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多