使用命令行编译打包运行自己的MapReduce程序

使用命令行运行mapreduce程序

  1. 在~/.bashrc 中增加如下几行中添加:

    export HADOOP_HOME=/usr/local/hadoop
    export CLASSPATH=$($HADOOP_HOME/bin/hadoop classpath):$CLASSPATH
    

    执行source ~/.bashrc
    通过hadoop classpath可以得到Hadoop所需要的全部classpath信息。

  2. 编译作业

    javac wordcount.java
    #接着将.class文件打包成jar
    jar -cvf wordcount.jar ./wordcout*.class
    
  3. 创建输入输出

    mkdir input
    echo "echo of the rainbow" > ./input/file0
    echo "the waiting game" > ./input/file1
    
  4. 将本地文件上传到HDFS上

    hdfs dfs -put ./input input
    
  5. 运行作业

    hadoop jar WordCount.jar WordCount input output
    #如果报找不到类的错误,则可试试下面命令
    hadoop jar WordCount.jar org/apache/hadoop/examples/WordCount input output
    

你可能感兴趣的:(Hadoop)