java - eclipse/java -- java.lang.UnsatisfiedLinkError : no ndbclient in java. 库.path

标签 java eclipse java-native-interface jnienv

这似乎是一个非常简单的问题,我希望得到一个简单的答案。我读过很多有关此问题的帖子,但尚未找到解决方案。

这是一个简单的程序:

package org.foo.test.LoadLibTest;

public class Main 
{
    public static void main(String[] args) throws java.io.IOException 
    {   
        System.loadLibrary("ndbclient");
    }
}

这会产生以下错误:

Exception in thread "main" java.lang.UnsatisfiedLinkError: no ndbclient in java.library.path
    at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1764)
    at java.lang.Runtime.loadLibrary0(Runtime.java:823)
    at java.lang.System.loadLibrary(System.java:1044)
    at org.paiego.test.LoadLibTest.Main.main(Main.java:9)

我使用以下参数修改了 java.library.path。并且该路径确实有效并且包含该库。

-Djava.library.path=/Users/foo/projects/hl/jpa_test/my-app/lib/

lib目录包含:

libndbclient.so

我使用的是 64 位操作系统:

Darwin paiego.local 13.0.0 Darwin Kernel Version 13.0.0: Thu Sep 19 22:22:27 PDT 2013; root:xnu-2422.1.72~6/RELEASE_X86_64 x86_64

还有 32 位版本的 Eclipse:

-arch
x86

我尝试加载的库来自 64 位安装的 MySQL Cluster 5.6

任何想法都值得赞赏!

谢谢!

最佳答案

您需要 64 位版本的 Java 来匹配共享库的 64 位版本。

关于java - eclipse/java -- java.lang.UnsatisfiedLinkError : no ndbclient in java. 库.path,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21788821/

相关文章:

java - 如何在eclipse中添加maven参数?

java - C++无法使用JNI在Java类中找到构造函数

java - NDK,使用 FloatBuffer 作为参数

qt - QPainter JNI调用使应用程序崩溃

android - 如何在调试中使用 Eclipse 交互式控制台

java - 取决于组方法未从另一个类文件中正确执行

java - 这个 URI URL 有什么问题? IllegalArgumentException,非法字符

java - 错误 : Manifest merger failed with multiple errors, 查看日志

java - 使用 lombok API 时 Eclipse 显示编译错误消息

java - 在Java中获取Path2D对象的坐标对?