在网上找了一个关于java本地方法实现的例子,就是打印一个HelloWorld,但是在最后运行的时候就会报错
==================================================================Exception in thread "main" java.lang.UnsatisfiedLinkError: HelloWorld
at MyNative.HelloWorld(Native Method)
at mytest.main(mytest.java:4)===================================================================不知道这个错误是什么意思,求各位大虾帮忙.本地方法声明类 MyNative的声明:public class MyNative {
static {
System.loadLibrary("MyNative");
}
public native static void HelloWorld();
public native static String cToJava();
}本地方法的实现:#include<stdio.h>
#include"MyNative.h"JNIEXPORT void JNICALL Java_MyNative_HelloWord (JNIEnv * env,jclass jobject)
{
printf("helloword!\n");
}JNIEXPORT jstring JNICALL Java_MyNative_cToJava(JNIEnv * env,jclass obj)
{
jstring jstr;
char str[]="Hello,word!\n";
jstr=env->NewStringUTF(str);
return jstr;
}一个mytest.java的测试类:
public class mytest {
public static void main(String[] args) {
MyNative mn = new MyNative();
mn.HelloWorld();
System.out.println(mn.cToJava());
}
}
==================================================================Exception in thread "main" java.lang.UnsatisfiedLinkError: HelloWorld
at MyNative.HelloWorld(Native Method)
at mytest.main(mytest.java:4)===================================================================不知道这个错误是什么意思,求各位大虾帮忙.本地方法声明类 MyNative的声明:public class MyNative {
static {
System.loadLibrary("MyNative");
}
public native static void HelloWorld();
public native static String cToJava();
}本地方法的实现:#include<stdio.h>
#include"MyNative.h"JNIEXPORT void JNICALL Java_MyNative_HelloWord (JNIEnv * env,jclass jobject)
{
printf("helloword!\n");
}JNIEXPORT jstring JNICALL Java_MyNative_cToJava(JNIEnv * env,jclass obj)
{
jstring jstr;
char str[]="Hello,word!\n";
jstr=env->NewStringUTF(str);
return jstr;
}一个mytest.java的测试类:
public class mytest {
public static void main(String[] args) {
MyNative mn = new MyNative();
mn.HelloWorld();
System.out.println(mn.cToJava());
}
}
能不能告诉我这个错误是什么意思啊?
谢谢:)