Windows下Eclipse本地调试Hadoop环境准备

Jar包准备

准备Hadoop的Jar包,这里准备的是Linux(64)环境下hadoop2.7.2的打包文件hadoop-2.7.2.tar.gz

1.将其下载解压到非中文目录
2.进入share文件夹,找到其中所有jar包,并将jar包拷贝到_lib文件夹(自己创建,任意起名)中
3.在全部jar包中查找结尾为sources.jar的jar包,并剪切到_source文件夹中(无用,可保留)
4.在全部jar包中查找结尾为tests.jar的jar包,并剪切到_test文件夹中(无用,可保留)

Eclipse准备

根据自己电脑的操作系统拷贝对应的编译后的hadoop jar包到非中文路径下, jar包下载 win7 win10 ,其中win10与win7的不同只在于解压后的bin目录,所以win10用户需要win7包下载保留并将win10包内容覆盖到win7包的bin目录即可

1.将下载的文件解压到非中文目录(例如:D:\software\hadoop-2.7.2)
2.配置HADOOP_HOME环境变量
   
3.启动Eclipse并创建一个Java Project
4.创建lib文件夹,然后添加之前准备好的_lib文件夹中的jar包(不要忘记Build Path)
   
5.创建包名:com.lzl.hdfs
6.创建HdfsClient类

public class HdfsClient {

	// 上传文件
	public static void main(String[] args) throws IOException, InterruptedException, URISyntaxException {

		// 1 获取文件系统
		Configuration configuration = new Configuration();
		// 配置在集群上运行
		// configuration.set("fs.defaultFS", "hdfs访问路径");
		// FileSystem fs = FileSystem.get(configuration);

		FileSystem fs = FileSystem.get(new URI("hdfs访问路径"), configuration, "用户名");

		// 2 上传文件
		fs.copyFromLocalFile(new Path("e:/hello.txt"), new Path("/hello2.txt"));

		// 3 关闭资源
		fs.close();
                System.out.println("over");
	}
}
7.执行程序
   运行程序时需要配置Hadoop用户名称
   
   客户端去操作hdfs时,是有一个用户身份的。默认情况下,hdfs客户端api会从jvm中获取一个参数来作为自己的用户身份:
   -DHADOOP_USER_NAME=hadoop,hadoop为用户名称
8.显示输出日志
   在项目的src目录下,新建一个文件,命名为“log4j.properties”,在文件中填入:
   
log4j.rootLogger=INFO, stdout  
log4j.appender.stdout=org.apache.log4j.ConsoleAppender  
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout  
log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] - %m%n  
log4j.appender.logfile=org.apache.log4j.FileAppender  
log4j.appender.logfile.File=target/spring.log  
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout  
log4j.appender.logfile.layout.ConversionPattern=%d %p [%c] - %m%n


猜你喜欢

转载自blog.csdn.net/liangzelei/article/details/80065712