私はhadoop-2.7.2
を使用しており、IntelliJでMapReduceJobを行っています。私の仕事では、私はapache.commons.cli-1.3.1
を使用しています。私はその瓶を瓶に入れました。私は私のHadoopクラスタ上MapReduceJobを使用する場合Hadoop NoSuchMethodError apache.commons.cli
は私が持っているNoSuchMethodError
:
Exception in thread "main" java.lang.NoSuchMethodError: org.apache.commons.cli.Option.builder(Ljava/lang/String;)Lorg/apache/commons/cli/Option$Builder;
メソッドがクラスOption
に存在し、クラスOption
が自分のアプリケーションにcommons-cli.jar
から抽出されたので、私は理解していません瓶。さらに、私は他のライブラリでこの問題を抱えていません。
ありがとうございます。
私はちょうどそのハーフープ使用のコモンズCLi 1.2を発見しました。私はこれが私の問題の原因だと思うが、私はそれを修正する方法を知らない。 – Antonin
'' pom.xml'でHadoopの依存関係から '' commons-cli-1.2'を除外しようとすると、Hadoopは '' commons-cli-1.3.1'を使います。エラーが発生した場合は、コード内で '1.2'を使用する方がよいでしょう。 –
私はそのようなことをしましたが、私の上司は問題を解決しないのでこの方法が欲しいとは思いません。後で別のlibで同じ問題が発生した場合でも、問題を再度修正する必要はありません。 ご連絡ありがとうございます。 – Antonin