无法创建文件客户端.发现java和本机库java构建版本不匹配



我正在尝试使用spring引导应用程序远程访问mapr路径。我已将fs.mapr.bailout.on.library.mismatch属性设置为false,以避免版本不匹配的错误。无论何时调用getFileStatus()函数,应用程序都会停止,并出现以下错误:

2020-12-15 10:07:18,7377 ERROR JniCommon fs/client/fileclient/cc/jni_MapRClient.cc:691 Thread: 123145425235968 Mismatch found for java and native libraries java build version 6.0.1.20180404222005.GA, native build version 6.0.1.20190808152212.GA java patch vserion $Id: mapr-version: 6.0.1.20180404222005.GA 1aeeb6d3c17c777fcba0, native patch version $Id: mapr-version: 6.0.1.20190808152212.GA 1aeeb6d3c17c777fcba0
2020-12-15 10:07:18,7378 ERROR JniCommon fs/client/fileclient/cc/jni_MapRClient.cc:708 Thread: 123145425235968 Client initialization failed.

代码:

FileSystem fileSystem = FileSystem.newInstance(new Configuration());
Configuration conf = fileSystem.getConf();
conf.set("fs.mapr.bailout.on.library.mismatch", "false");
Path OffsetPath = new Path(filePath);
FileStatus file = fileSystem.getFileStatus(filePath);  ====> This statement gives error

使用的hbase依赖项:

<dependency>
<groupId>com.mapr.fs</groupId>
<artifactId>mapr-hbase</artifactId>
<version>6.0.1-mapr</version>
</dependency>
<dependency>
<groupId>org.apache.hbase</groupId>
<artifactId>hbase-client</artifactId>
<version>1.1.8-mapr-1710</version>
</dependency>

我该如何更正?

因此,仅仅禁用版本不匹配错误不是一个好主意。有些不匹配对某些任务来说是可以的,但有些不匹配可能是致命的。

更详细地说,稍微澄清一下会很有帮助。

  • 当你说远程访问时,你是在从一个集群到另一个集群?或者来自群集之外的客户端计算机?

  • 假设你指的是第二种情况(集群外的客户端(,你在客户端机器上安装了什么?

  • 为什么禁用版本不匹配?你担心哪些版本不匹配?

  • POSIX接口或本地环回NFS是否在问题节点上工作?

  • hadoopshell是从问题节点开始工作的吗?

最新更新