当前位置: 首页 > 知识库问答 >
问题:

Hadoop NoSuchMethodError apache.commons.cli

越欣怡
2023-03-14

我不明白,因为该方法存在于类选项中,而类选项是从commons-cli.jar提取到我的应用程序JAR中的。而且,我的其他库没有这个问题。

谢谢你抽出时间。

共有1个答案

柯乐池
2023-03-14

这个问题似乎与classloader如何加载类有关。因为静态构建器类位于公共-CLI 1.4中,而一些Hadoop依赖项仍然引用旧版本,所以出现了这个问题。

在我的例子中,通过在程序执行前更改将jar文件添加到负责设置环境的shell脚本中的类路径的顺序,问题得到了解决。早些时候,我将jar添加到类路径中,如

CLASSPATH=<Hadoop Jars>:<Common CLI jar>:$CLASSPATH

更改为

CLASSPATH=<Common CLI jar>:<Hadoop Jars>:$CLASSPATH
 类似资料:

相关问答

相关文章

相关阅读