Java 运行Hadoop Pi示例

Java 运行Hadoop Pi示例,java,hadoop,Java,Hadoop,我需要一些在Windows中运行Hadoop Pi示例的帮助。我已经成功地在Windows上安装了Hadoop,可以看到所有NameNode、SecondaryNameNode、JobTracker和TaskTracker都在运行。我还可以点击网址: http://localhost:50070/, http://localhost:50030 and http://localhost:50090/. 然而,当我试图运行内置Pi示例时,我得到了以下异常 $ hadoop jar hadoop/

我需要一些在Windows中运行Hadoop Pi示例的帮助。我已经成功地在Windows上安装了Hadoop,可以看到所有NameNode、SecondaryNameNode、JobTracker和TaskTracker都在运行。我还可以点击网址:

http://localhost:50070/, http://localhost:50030 and http://localhost:50090/.
然而,当我试图运行内置Pi示例时,我得到了以下异常

$ hadoop jar hadoop/hadoop-examples-1.2.1.jar pi 4 100
Not a valid JAR: C:\cygwin\home\chandeln\hadoop\hadoop-examples-1.2.1.jar
我还在路径中设置了hadoop和java

$ java -version
java version "1.7.0_40"
Java(TM) SE Runtime Environment (build 1.7.0_40-b43)
Java HotSpot(TM) 64-Bit Server VM (build 24.0-b56, mixed mode)

$ hadoop version
Hadoop 1.2.1
Subversion https://svn.apache.org/repos/asf/hadoop/common/branches/branch-1.2 -r 1503152
Compiled by mattf on Mon Jul 22 15:23:09 PDT 2013
From source with checksum 6923c86528809c4e7e6f493b6b413a9a
This command was run using /C:/cygwin/usr/local/hadoop/hadoop-core-1.2.1.jar
My.bashrc如下所示:

export JAVA_HOME=/cygdrive/c/Java/jdk1.7.0_40
export HADOOP_PREFIX=/cygdrive/c/usr/local/hadoop
export PATH=$PATH:$HADOOP_PREFIX/bin

有人能解释一下吗?

尽管Hadoop是用Java编写的,但它在Windows上运行得并不好。如果您真的想在尽可能短的时间内启动并运行Hadoop,我建议您使用Linux。您可以下载免费的应用程序,并将其安装在Windows上。然后,在上下载最新版本,并使用VMWare Player将其作为虚拟机安装。然后你就可以使用你的Ubuntu虚拟机来运行它了


如果这似乎是太多的工作,请打开一个帐户,然后找到要使用的工具。

这很可能是因为您的Java版本与Jar不匹配。尝试使用jdk1.6

(看起来你在玩YDN Hadoop?

试试看
$jarn jar hadoop/hadoop-examples-1.2.1.jar pi 4 100

我在Ubuntu上安装了hadoop,使其工作,甚至使pi示例在那里工作。但是,唯一的问题是,您必须不时键入以“sudo”开头的命令。作为一名Windows开发人员,我不知道什么时候执行以“sudo”开头的命令,什么时候不执行。@user2325154:确保您拥有自己的Hadoop安装。如果你这样做,你就不必使用sudo。例如,如果您下载Hadoop并使用sudo提取它,它将属于root,您需要使用sudo来访问它。要确保您是所有者,请转到包含Hadoop文件夹的目录并键入“sudo chown-R[您的用户名]:[您的组名]”,这将递归地授予您文件的所有权,并允许您在没有sudo的情况下执行命令。