无法解析导入 org.apache.hadoop

The import org.apache.hadoop cannot be resolved

我看到过这个问题,但 none 的修复似乎对我有用。或者更有可能是我做错了,因为我对此很陌生。

(在 eclipse 中工作)我在以下行中收到错误 The import org.apache.hadoop cannot be resolved

import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.filecache.DistributedCache;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.io.*;
import org.apache.hadoop.mapred.*;

认为 我添加了正确的外部 jar,但显然没有。我有的在下面。我通过转到项目属性 Java 构建路径、库、添加外部 Jar

来添加它们

commons-codec-1.9.jar commons-fileupload-1.3.1.jar commons-io-2.4-javadoc.jar commons-io-2.4-sources.jar commons-io-2.4-testsources.jar commons-io-2.4-tests.jar commons-io-2.4.jar commons-logging-1.2.jar fluent-hc-4.4.jar httpclient-4.4.jar httpclient-cache-4.4.jar httpclient-win-4.4.jar httpcore-4.4.jar httpmime-4.4.jar jna-4.1.0.jar jna-platform-4.1.0.jar

您似乎仍然缺少依赖项。

Hadoop 开发并不简单,有很多依赖关系,而且很快就会变得混乱。为什么不使用像 Maven 这样的依赖管理器?然后您可以简单地将它添加到您的 POM.xml 并让它为您完成繁重的工作:

<dependency>
    <groupId>org.apache.hadoop</groupId>
    <artifactId>hadoop-common</artifactId>
    <version>2.6.0</version>
</dependency>
<dependency>
    <groupId>org.apache.hadoop</groupId>
    <artifactId>hadoop-mapreduce-client-core</artifactId>
    <version>2.6.0</version>
</dependency>
<dependency>
    <groupId>org.apache.hadoop</groupId>
    <artifactId>hadoop-hdfs</artifactId>
    <version>2.6.0</version>
</dependency>

如果您不熟悉 Maven,SO 和其他地方有大量关于如何使用 Eclipse 设置基本 Maven 项目的信息!