运行JNI程序时出现“java / lang / NoClassDefFoundError:java / lang / Object”

时间:2011-12-20 08:07:15

标签: java java-native-interface hdfs scribe

我为安装抄写员而烦恼。 HDFS。值得欣赏,我解决了大部分问题。但是,我被困在这里。

我安装了libhdfs,并编写了一个“Hello world”测试:

#include <iostream>
#include <string>
using namespace std;
#include "hdfs.h"

int main(int argc,char *argv[]){
    string host = "10.210.74.143";
    int port = 9000;
    hdfsFS fs = hdfsConnect(host.c_str(),port);
    return 0;
}

我运行它时打印这个消息:

Error occurred during initialization of VM
java/lang/NoClassDefFoundError: java/lang/Object

我发誓我已经设置了CLASSPATH

1 个答案:

答案 0 :(得分:0)

首先,您正在运行C程序,而不是使用Java程序中的动态库。这真的是你打算做的吗?

如果是这样,也许您需要显式创建一个JVM(有趣): 除非hdfsConnect函数为您完成,否则请参阅http://www.inonit.com/cygwin/jni/invocationApi/c.html