8

我是 hadoop 的初学者,使用 hadoop 的初学者指南作为教程。

我正在使用 mac osx 10.9.2 和 hadoop 版本 1.2.1

当我在终端中调用 echo $PATH 时,我已经设置了所有适当的类路径:

这是我得到的结果:

/Library/Frameworks/Python.framework/Versions/2.7/bin:/Users/oladotunopasina/hadoop-1.2.1/hadoop-core-1.2.1.jar:/Users/oladotunopasina/hadoop-1.2.1/bin:/ usr/share/grails/bin:/usr/share/groovy/bin:/Users/oladotunopasina/.rvm/gems/ruby-2.1.1/bin:/Users/oladotunopasina/.rvm/gems/ruby-2.1.1 @global/bin:/Users/oladotunopasina/.rvm/rubies/ruby-2.1.1/bin:/usr/local/heroku/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr /local/bin:/Users/oladotunopasina/.rvm/bin:/Users/oladotunopasina/.rvm/bin

我尝试编译 WordCount1.java,但出现以下错误:

WordCount1.java:2: package org.apache.hadoop.conf does not exist
import org.apache.hadoop.conf.Configuration ;
                         ^
WordCount1.java:3: package org.apache.hadoop.fs does not exist
import org.apache.hadoop.fs.Path;
                       ^
WordCount1.java:4: package org.apache.hadoop.io does not exist
import org.apache.hadoop.io.IntWritable;
                       ^
WordCount1.java:5: package org.apache.hadoop.io does not exist
import org.apache.hadoop.io.Text;
                       ^
WordCount1.java:6: package org.apache.hadoop.mapreduce does not exist
import org.apache.hadoop.mapreduce.Job;
                              ^
WordCount1.java:7: package org.apache.hadoop.mapreduce does not exist
import org.apache.hadoop.mapreduce.Mapper;
                              ^

请帮忙。

4

2 回答 2

10

CLASSPATH 变量是告诉应用程序(包括 JDK 工具 (javac))在哪里查找用户类的方法。

您可以如下所示设置此变量并尝试编译该类。

export CLASSPATH=$CLASSPATH:/Users/oladotunopasina/hadoop-1.2.1/hadoop-core-1.2.1.jar
于 2014-06-24T16:53:13.827 回答
1

如果您使用的是 Maven、Gradle、sbt 等构建工具。

您必须将依赖插件添加到构建文件中。

对于 Maven,例如,您必须将以下内容添加到您的 pom.xml

<dependency>
    <groupId>org.apache.hadoop</groupId>
    <artifactId>hadoop-core</artifactId>
    <version>1.2.1</version>
</dependency>

您可以在此处找到其他构建工具的依赖项设置

于 2014-06-25T20:22:27.923 回答