我有一个.dll文件,我必须在java中使用它。此.dll文件具有参数化方法,该方法应将类型返回为字符串。
当我将参数传递给它时,我得到的消息为Native methods do not specify a body
以下是代码......
package com.letme.test;
public class Eagleye_parser {
String n = "E48A7 F7759 65EA7";
public Eagleye_parser() {}
static {
System.loadLibrary("Eagleye_parser");
}
public native String eagleye_fmu(n);// here it is giving msg : Native methods do not specify a body
}
答案 0 :(得分:2)
试着看看JNA,它为本机代码提供了一个很好的包装层。
答案 1 :(得分:0)
在项目中简单添加引用。和顶部的命名空间..然后你可以访问所有的DLL方法。 如果您正在使用Eclispe,请右键单击您的项目 - >然后单击Build path->然后在单击用户库
后单击添加库您可以在此处导入dll
答案 2 :(得分:0)
public native String eagleye_fmu(n);
这里的'n'是问题,因为它会导致任何其他java函数声明出现问题。
这应该类似public native String eagleye_fmu(String);
,然后像任何其他函数一样调用本机函数String result = eagleye_fmu(n);
这是假设您已正确实施dll