我正在尝试用c++编写一个接口,以便使用libhdfs.so在hdfs中编写文件。我的目标hadoop版本是2.0.2-alpha
以下代码
hdfsFS fs = hdfsConnect("127.0.0.1",8020);
if (!fs)
{
printf("Hadoop file system returned null. \n");
return 0;
}
运行时出现以下错误:
Error occurred during initialization of VM
java/lang/NoClassDefFoundError: java/lang/Object
相应地更新了类路径,但仍然出现此错误。你知道我在这里错过了什么步骤吗?所有的.so文件都链接正确。
1条答案
按热度按时间sxpgvts31#
您可以使用以下命令来查找hadoop所需的java类路径
$hadoop类路径
并将所有这些路径添加到环境变量classpath中
$export classpath=$classpath:
hadoop classpath
下面是cdh4的libhdfs示例。请注意exec.sh中的环境设置