用另一个方法替换 Job Class 中的方法 waitForCompletion()

Replace the Method waitForCompltetion() in Job Class by another Method

我目前使用的是 hadoop 2.7.2

我想知道 class Joborg.apache.hadoop.mapreduce.job 中是否有 另一种方法 可以替代方法 waitForCompletion(),因为在我的项目中,waitForCompletion() 调用了另一个名为 getProxy() 的方法,它应该在 hadoop-common- 包 org.apache.hadoop.ipc 中的 RPC class 中2.7.2,但是不存在

不过有一个link证明了RPCgetProxy()方法的存在:https://hadoop.apache.org/docs/r1.0.4/api/org/apache/hadoop/ipc/RPC.html

如果你想详细描述源码问题这里是link:

hadoop mapreduce java program exception: java.lang.NoSuchMethodError

如有任何帮助,我们将不胜感激。谢谢

您可以尝试添加以下依赖项并 运行 一次。

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>ncku.hpds.tzulitai</groupId>
    <artifactId>distributed-svm</artifactId>
    <version>0.0.1-SNAPSHOT</version>
  </parent>
  <artifactId>cascade-svm-mr</artifactId>
  <name>cascade-svm-mr</name>
  <description>The Cascade SVM approach, implemented with MapReduce</description>
  <build>
  <plugins>
    <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>2.3.2</version>
        <configuration>
            <source>1.7</source>
            <target>1.7</target>
        </configuration>
    </plugin>
   </plugins>
  </build>
  <dependencies>
    <dependency>
        <groupId>tw.edu.ntu.csie</groupId>
        <artifactId>libsvm</artifactId>
        <version>3.17</version>
    </dependency>
            <!-- BIG DATA -->
        <dependency>
            <groupId>org.apache.hadoop</groupId>
            <artifactId>hadoop-common</artifactId>
            <version>2.7.2</version>
        </dependency>

        <dependency>
            <groupId>org.apache.hadoop</groupId>
            <artifactId>hadoop-client</artifactId>
            <version>2.7.2</version>
        </dependency>
  </dependencies>
</project>