[code="java"]
public class TestJava{
{
System.loadLibrary("test");
}
public native int add(int a,int b);
public static void main(String argvs[])
{
TestJava ts=new TestJava();
System.out.println(ts.add(4,5));
}
}
[/code]
c++ test.h
[code="c++"]
#ifndef TEST_H
#define TEST_H
int add (int a,int b)
#endif
[/code]
test.cpp
[code="c++"]
#include "test.h"
int add (int a,int b)
{
return a+b;
}
[/code]
编译libtest.so
g++ -fPIC -shared test.cpp -olibtest.so
编译运行java
javac TestJava.java
java TestJava
报错如下:
Exception in thread "main" java.lang.UnsatisfiedLinkError: TestJava.add(II)I
at TestJava.add(Native Method)
at TestJava.main(TestJava.java:11)
这个什么原因,请指教。