最近在学习用java来编写MapReduce程序,我是先在windows中开发完成,运行没有问题之后,再打成jar包,放到Linux集群中运行,由于在配置windows的开发环境的时候就花了大半天的时间,所以我打算把这个过程给简单的记录一下,方便以后需要的时候可以快速查看,以免浪费过多的时间。

一、Windows中安装Hadoop客户端

先安装好eclipse和jdk,然后在windows中安装Hadoop,windows中的版本最好和集群中的版本一致,我的集群安装的版本是Hadoop3.2.1,所以在windows中也安装Hadoop3.2.1,先去官网下载安装包,下载地址为https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/hadoop-3.2.1/hadoop-3.2.1.tar.gz,下载之后解压出来,要在windows中编程,还需要在hadoop的bin目录里面添加一个winutils.exe文件,下载地址为https://github.com/cdarlint/winutils,将对应版本的安装包下载下来,直接用里面的bin目录替换掉官网下载的安装包里面的bin目录即可,然后配置环境变量,环境变量配置好之后windows中的hadoop就安装完成了。

二、配置maven环境,创建maven工程

下载maven安装包,下载地址为http://maven.apache.org/download.cgi,windows系统中选择-bin.zip的安装包下载,下载之后解压出来,配置好环境变量(如果需要修改本地仓库地址,则打开安装包目录中的conf/settings.xml文件,找到<localRepository>/path/to/local/repo</localRepository>一行,将其复制到注释之外,然后将/path/to/local/repo修改成自己需要的地址之后保存文件即可,之后在命令行窗口输入mvn help:system,如果在刚才配置的目录下生成了一些文件,就说明配置成功了),然后打开eclipse,选择Window-->Preferences-->Maven-->User Settings即可出现如下界面:

其中User Settings中填的是maven安装包中conf目录下的settings.xml目录,我的安装在F盘,所以就填F:\maven\conf\settings.xml,Local Repository中填的是maven安装包中的maven-repository目录,我的填的是F:\maven\maven-repository,填好之后点击Apply and Close,maven环境就配置好了。接下来就可以创建maven工程了,在eclipse中点击File-->New-->Project,然后选择Maven,在Maven下面选择Maven Project

点击Next,勾选Create a simple project

点击Next,在弹出框中填入Group Id和ArtifactId,然后点击Finish

Group Id和ArtifactId被统称为"坐标",其中Group Id是项目组织唯一的标识符,对应的是java的包的结构,一般情况下填域名的反写,ArtifactId是项目的唯一标识符,对应项目名称,是项目根目录名称,填好之后在eclipse左侧就能看到项目的目录了(可能需要等待一段时间)

打开项目中的pom.xml文件,填入配置信息

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.qwer</groupId>
<artifactId>MapReduceDemo</artifactId>
<version>0.0.1-SNAPSHOT</version> <name>hadoop-test</name>
<url>http://maven.apache.org</url> <properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<hadoop.version>3.1.2</hadoop.version>
<!-- Logger -->
<lg4j2.version>2.12.1</lg4j2.version>
</properties> <dependencies>
<dependency>
<!-- 客户端版本,最好和集群版本一致 -->
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-client</artifactId>
<version>3.2.1</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.30</version>
</dependency>
</dependencies> <build>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.6.1</version>
<configuration>
<!-- jdk版本 -->
<source>1.8</source> <!-- 源代码使用的JDK版本 -->
<target>1.8</target> <!-- 需要生成的目标class文件的编译版本 -->
</configuration>
</plugin>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
</project>

填好之后保存,然后在项目中的src/main/resources目录下创建一个名为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

完成以上操作,就可以在项目中的src/main/java目录下面开始编写程序了。

使用JAVA操作HDFS案例:https://www.cnblogs.com/ynqwer/p/14551744.html

使用JAVA编写MapReduce案例:https://www.cnblogs.com/ynqwer/p/14598487.html

Windows下配置Hadoop的Java开发环境的更多相关文章

  1. 在Windows下配置Python+Django+Eclipse开发环境

    一.配置开发环境我的开发环境是:Python2.6.7 + Django1.6.2 + Eclipse1.安装Python2.安装Eclipse的Python插件PyDev如上两步如何操作请点击此进行 ...

  2. react-native —— 在Windows下搭建React Native Android开发环境

    在Windows下搭建React Native Android开发环境 前段时间在开发者头条收藏了 @天地之灵_邓鋆 分享的<在Windows下搭建React Native Android开发环 ...

  3. windows下搭建Apache+Mysql+PHP开发环境

    原文:windows下搭建Apache+Mysql+PHP开发环境 要求 必备知识 熟悉基本编程环境搭建. 运行环境 windows 7(64位); Apache2.2;MySQL Server 5. ...

  4. 在IntelliJ IDEA 13中配置OpenCV的Java开发环境

    准备工作: 下载IDEA 13(这里以版本13为例,后面简称IDEA): 下载Java JDK(用于配置基本的Java开发环境): 下载OpenCV 2.4.9(这里以版本2.4.9为例,据这篇文章说 ...

  5. 转[开发环境配置]在Ubuntu下配置舒服的Python开发环境

    在Ubuntu下配置舒服的Python开发环境 Ubuntu 提供了一个良好的 Python 开发环境,但如果想使我们的开发效率最大化,还需要进行很多定制化的安装和配置.下面的是我们团队开发人员推荐的 ...

  6. (4)Linux(ubuntu)下配置Opencv3.1.0开发环境的详细步骤

    Ubuntu下配置opencv3.1.0开发环境 1.最近工作上用到在Ubuntu下基于QT和opencv库开发应用软件(计算机视觉处理方面),特把opencv的配置过程详细记录,以供分享 2.步骤说 ...

  7. 一步一步在Windows下搭建React Native Android开发环境

    搭建JAVA开发环境 依据操作系统分为x86或x64位的.下载jdk1.8以上的版本号. 本机安装时的java版本号:jdk-8u45-windows-x64.exe 配置JAVA的环境变量 JAVA ...

  8. windows下Qt5.1 for android开发环境配置(PS:Qt5.2出来了哈,稳定)

    说明:以下开发环境配置过程参考了这些文章: http://qt-project.org/wiki/building_qt-android_on_windows http://www.hyarm.com ...

  9. [Hadoop] Windows 下的 Hadoop 2.7.5 环境搭建

    原文地址:https://www.cnblogs.com/memento/p/9148721.html 准备说明: jdk:jdk-8u161-windows-x64.exe hadoop:hadoo ...

  10. windows下 eclipse搭建spark java编译环境

    环境: win10 jdk1.8 之前有在虚拟机或者集群上安装spark安装包的,解压到你想要放spark的本地目录下,比如我的目录就是D:\Hadoop\spark-1.6.0-bin-hadoop ...

随机推荐

  1. [canvas]ncaught TypeError: Cannot read properties of null (reading 'getContext')

    相信你和我一样是直接复制大佬的js代码(笑) ------------ 主要问题在于:js先加载完了,html才加载,导致js获取不了html的对象 解决办法: 把  <head />  ...

  2. MQTT 发布/订阅模式介绍

    MQTT 发布/订阅模式 发布订阅模式(Publish-Subscribe Pattern)是一种消息传递模式,它将发送消息的客户端(发布者)与接收消息的客户端(订阅者)解耦,使得两者不需要建立直接的 ...

  3. RDD持久化和检查点

    val count: RDD[(String, Int)] = mapRDD.reduceByKey(_ + _)count.collect() val value: RDD[(String, Ite ...

  4. 关于之前ecplices没法正常导入使用fx包的笔记

    办法一:在java build path里的libraries里导入跟工作环境版本(或者ecplices的jdk版本)相配的jar包. 注:如果导入的包是要用fx的,可以不直接改整个程序的工作环境,可 ...

  5. ORCAD中,怎么一次性去掉所有元器件下面的下划线呢

    选择元器件,右键找到unset单击就可以去掉了

  6. 百题计划-5 codeforces 651 div2 D. Odd-Even Subsequence 二分检查

    https://codeforces.com/contest/1370/problem/D 二分检查 #include<bits/stdc++.h> using namespace std ...

  7. ubuntu 逻辑卷增加磁盘

    使用lv* 相关的命令 lvdisplay lvscan ACTIVE            '/dev/ubuntu-vg/ubuntu-lv' [<74.00 GiB] inherit lv ...

  8. 物料Classification 分类系统

    作用:可以追加物料的属性,因为在物料主界面字段是有限的,并且并不是符合所有企业的业务,可以使用追加属性的方式给物料添加各式各样的属性 1.创建特性,Tcode:CT04 2.创建分类 Tcode:CL ...

  9. ssl 导入和配置

    https://blog.csdn.net/qq_23663693/article/details/121698553

  10. PC端 图片宽度是百分比,动态设置图片高度为 6:9

    我们知道图片宽度可以设置  百分比,但是高度要给一个固定值  不然不生效,并且产品要求图片显示必须是9:6,这开始确实难倒我了 后面想了一下用js  获取图片宽度  动态的计算高度就行了,超简单 se ...