我这里有一个libhf_test.so文件,开始是放在android project里边的,调用什么的都没有问题。
现在新加了一个需求:把这个libhf_test.so文件放到web project项目中
然后我就写了个小小的测试类
public class AppUtil{
static{
System.loadLibrary("hf_test");
}
//so文件中的native方法
public native static String getNString(String paramsString);
public static void main(String[] args) {
System.out.println("load:"+getNString("020#2#B621#merexpand"));
}
}
然后运行报错了
java.lang.UnsatisfiedLinkError: no hfswpay in java.library.path
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1709)
at java.lang.Runtime.loadLibrary0(Runtime.java:823)
at java.lang.System.loadLibrary(System.java:1030)
at com.umpay.huafubao.util.AppUtil.(AppUtil.java:8)
Exception in thread "main"
百度了好多解决办法,有把so文件放到java.library.path各个路径中的,有用System.load("路径/libhf_test.so")的,都不行啊
System.load("路径/libhf_test.so")会报文件类型的错,好像只能加载.dll文件
然而我就只想用System.loadLibrary()这个方法了,
adnroid工程可以直接调用是因为,它本身已经做好了配置
我想web工程也需要做一些ndk的配置才能使用吧? 希望大家能指点一二
另外:还有说要用到.h头文件的,我的开发工具myeclipse,用Java,不是vs |
|