JNI native:java.lang.UnsatisfiedLinkError:java.library.path中没有HelloWorld

时间:2012-09-14 05:57:24

标签: java c++ java-native-interface

我按照教程构建我的第一个JNI程序。 我的节目很简单..

package JNI;
public class HelloWorld {

    private native void print();

    public static void main(String[] args) {
        new HelloWorld().print();
    }

    static {

        System.loadLibrary("HelloWorld");

    }
}

我还构建了c ++本机库(.so文件),并将其放在同一目录下

并使用

java -Djava.library.path=. JNI.HelloWorld

(本机库和helloworld.class位于同一位置)

所有东西看起来都很正确。但错误从不放弃纠缠我..

你能帮帮我吗?

1 个答案:

答案 0 :(得分:5)

您需要检查

  • 您的图书馆名为libHelloWorld.so
  • 它可以由您执行。
  • 与JVM一样,它是32/64位。