louyaoluan 发表于 2016-12-6 11:26:24

运行Hadoop权威指南中的例子:3.5.1:URLCat

  1、编写代码:

package crt.hadoop.test;
import java.io.IOException;
import java.io.InputStream;
import java.net.MalformedURLException;
import java.net.URL;
import org.apache.hadoop.fs.FsUrlStreamHandlerFactory;
import org.apache.hadoop.io.IOUtils;
public class URLCat {
static{
URL.setURLStreamHandlerFactory(new FsUrlStreamHandlerFactory());
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
InputStream in = null;
try{
in = new URL(args).openStream();
IOUtils.copyBytes(in, System.out, 4096, false);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally{
}
}
}
  2、在$HADOOP_HOME下新建目录build/classes/crt/hadoop/test/
  3、把URLCat.java复制到$HADOOP_HOME/build/classes/crt/hadoop/test/
  4、编译:
  $ javac -classpath $HADOOP_HOME/hadoop-common-0.21.0.jar
  $HADOOP_HOME/build/classes/crt/hadoop/test/URLCat.java
  5、新建测试文件
  $ cd  /home/hadoop/workspace
  $ mkdir  readdata
  $ cd  readdata
  $ echo "hello hadoop" > readdatatest.txt
  $ hdfs  dfs  put  readdatatest.txt  hdfs://namenode:9001/tmp
  6、运行:
  $ export  HADOOP_CLASSPATH=build/classes
  $ hadoop crt.hadoop.test.URLCat hdfs://hadoop-namenode:9001/tmp/readdatatest.txt
  运行结果:
  hello hadoop
页: [1]
查看完整版本: 运行Hadoop权威指南中的例子:3.5.1:URLCat