我正在尝试学习 MapReduce,但我现在有点迷茫。
特别是这组指令:
Compile WordCount.java and create a jar:
$ bin/hadoop com.sun.tools.javac.Main WordCount.java
当我在终端中输入 hadoop
时,我能够看到提供参数的“帮助”,所以我相信我已经安装了 hadoop。
当我输入命令时:
编译 WordCount.java 并创建一个 jar:
hadoop com.sun.tools.javac.Main WordCount.java
我得到错误:
错误:无法找到或加载主类 com.sun.tools.javac.Main
我知道我已经安装了 Java 并在我的计算机上运行,因为我以前用它来创建其他程序。
此命令输出:
$ /usr/libexec/java_home
/Library/Java/JavaVirtualMachines/jdk1.7.0_55.jdk/Contents/Home
也许我缺少一套 Java 工具?不确定
最佳答案
我遇到了同样的错误。
我通过添加 HADOOP_CLASSPATH 环境参数解决了这个问题:
export HADOOP_CLASSPATH=/usr/lib/jvm/java-7-openjdk-amd64/lib/tools.jar
请确保您安装了 OpenJDK7。我正在使用 Ubuntu 14.04:
sudo apt-get install openjdk-7-jdk
关于java - 无法找到或加载主类 com.sun.tools.javac.Main hadoop mapreduce,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45161319/