Hadoop Part 4 - 搭建 Hadoop 开发环境
文章导航
Hadoop Part 4 - 搭建 Hadoop 开发环境
【版本】
当前版本号v20210416
版本 | 修改说明 |
---|---|
v20210416 | 修正一些拼写错误 |
v20210401 | 初始化版本 |
【实验名称】
Hadoop Part 4 - 搭建 Hadoop 开发环境
【实验目的】
- 掌握 JDK 的安装和环境变量的设置
- 掌握 IDEA 的安装和使用
- 掌握 Maven 的安装、配置和使用命令
【实验环境】
- Windows 7 以上64位操作系统
【实验资源】
- Hadoop
- JDK 8 - Java Development Kit是 Oracle 公司针对Java开发人员发布的免费软件开发工具包,是 Java 开发必备的开发工具。
- Intellij IDEA - 业界简称IDEA,是 jetbrains 公司推出的和 Eclipse 齐名的 Java 集成开发环境(IDE)。
- Apache Maven - Apache Maven,是一个软件项目管理及自动构建工具,由Apache软件基金会所提供。是 Java 构建打包最广泛使用的工具。
下载链接:https://pan.baidu.com/s/1ghde86wcK6pwg1fdSSWg0w
提取码:v3wv
【实验步骤】
- 在 Windows 运行安装 jdk-8u261-windows-x64.exe,安装过程略。此处以安装到
d:\jdk8
为例。安装完结束以后目录架构如下:目录架构如下:
d:\jdk8
|-bin/
|-lib/
|-include/
|-jre/
|-legal/
|-javafx-src.zip
|-jmc.txt
|-src.zip
|-COPYRIGHT
|-release
|-LICENSE
|-README.html
- 进入Windows的环境变量配置界面,配置以下环境变量。如果系统C盘会还原,每次重启电脑都需要配置此环境变量。注意修改 JDK 的安装目录为你实际安装目录。
#新增
JAVA_HOME=D:\jdk8
CLASSPATH=%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar
#修改PATH,在PATH环境变量原有值后面追加
;%JAVA_HOME%\bin;
- 打开Windows 的命令行终端,运行以下命令,测试是否有
JDK
的版本输出。
java -version
- 运行
intellij-idea-community-portable-win64-2020.3.2-46-setup.exe
,指定目录安装 IDEA,这里以d:\idea
为例。安装完成以后目录架构如下:
d:\idea
|-app/
|-CHANGELOG.md
|-data/
|-intellij-idea-community-portable.exe
|-intellij-idea-community-portable.sample.yml
|-log/
|-portapp.json
|-portapp.json.bak
|-portapp-prev.json
|-README.md
- 编辑
d:\idea\app\bin
目录下的idea.exe.vmoptions
和idea64.exe.vmoptions
,在文件末尾加上以下代码,让 IDEA 默认使用UTF8编码。
-Dfile.encoding=UTF-8
- 解压
apache-maven-3.6.3-bin-custom.zip
,这里以解压到d:\maven363
为例。这个 Maven 版本经过老师修改,已经内置了一个 repos 文件夹,里面包含 hadoop 2.7.3 开发包的仓库(Repository)。
d:\maven363
|-bin/
|-boot/
|-conf/
|-lib/
|-LICENSE
|-NOTICE
|-README.txt
|-repos/
- 编辑
d:\maven363\conf\settings.xml
文件。在约54行修改本地仓库(localRepository)路径配置。这里注意修改为你的 Maven 的实际安装路径。
<settings ...>
...
<localRepository>D:/maven363/repos</localRepository>
...
</settings>
- 编辑
d:\maven363\conf\settings.xml
文件。在约148行<mirrors>
标签内增加远程仓库镜像地址。开发过程中依赖的 Jar 包可以通过配置从此地址下载。
- 如果电脑无法联网,可以修改指向内网的仓库镜像。
<mirror>
<id>maven-public</id>
<mirrorOf>*</mirrorOf>
<name>maven-public</name>
<url>http://192.168.1.50:8081/repository/maven-public</url>
</mirror>
- 如果电脑可以联网,可以修改指向阿里云的仓库镜像。
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>*</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
- 进入Windows的环境变量配置界面,配置以下环境变量。
#新增
MAVEN_HOME=D:\maven363
#修改PATH,在PATH环境变量原有值后面追加
;%MAVEN_HOME%\bin;
- 打开Windows 的命令行终端,运行以下命令,测试是否有
Maven
的版本输出。
mvn -version
启动IDEA,运行
d:\idea\intellij-idea-community-portable.exe
。新建一个项目。新建一个 Maven 项目,
Project SDK
选择 1.8,如果没有,则点击Add JDK...
,指向你的 JDK 的安装目录。新建一个开发项目,命名为
hadoopexp+你的学号后4位
。创建成功以后,可以看到项目的整体目录架构。
修改 IDEA 的 Maven 配置,指向本地安装的 Maven。这里注意替换为你的 Maven 的实际安装目录。
修改项目下的
pom.xml
文件,此文件是 Maven 项目的配置文件。
<?xml version="1.0" encoding="UTF-8"?>
<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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.example</groupId>
<artifactId>hadoop-exp</artifactId>
<version>1.0-SNAPSHOT</version>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.encoding>UTF-8</maven.compiler.encoding>
<maven.compiler.source>8</maven.compiler.source>
<maven.compiler.target>8</maven.compiler.target>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.13</version>
</dependency>
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-common</artifactId>
<version>2.7.3</version>
</dependency>
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-client</artifactId>
<version>2.7.3</version>
</dependency>
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-hdfs</artifactId>
<version>2.7.3</version>
</dependency>
</dependencies>
</project>
在项目
hadoop-exp\src\main\java
下创建一个名为hadoop+你学号后4位
的包。注意替换为你的学号后4位。在你创建的包下面,再创建一个名为
Hello
的类(class)。在
Hello
这个类中,编写一个main
方法,打印出以下内容。记录你编写的代码,注意替换为你的学号后4位。
Hello from 你学号后4位
JUnit 是 Java 开发中最常用的单元测试框架,可以帮助测试我们编写的代码。JUnit 非常容易上手。我们可以新建一个 JUnit 测试类学习使用它。
在项目
hadoop-exp\src\test\java
下创建一个名为hadoop+你学号后4位
的包。注意替换为你的学号后4位。在你刚创建的包下面创建一个名为
HelloJUnit
的类。编辑
HelloJUnit
类,输入下面的代码,运行查看测试结果。注意替换为你的学号后4位。
package hadoop+你学号后4位;
import org.junit.Test;
import static org.junit.Assert.*;
public class HelloJUnit {
@Test
public void test1(){
//第1个参数时期待值,第2个参数是我们需要测试的值
assertEquals(2,1+1);//测试期望两者相等
assertEquals("你好","你"+"好");//测试期望两者相等
assertTrue(3==(1+1));//测试结果期望为 false
assertNotEquals("帅哥","帅锅");//测试期望两者不相等
}
}
如果结果显示是绿色的勾,则表示单元测试成功。如果是交叉,则表示测试失败。
修改以上
HelloJUnit
类,重新运行,让测试成功。并记录你修改的代码。编写一个
test2
方法,测试以下2个字符串是否相等。
字符串1:1ll1ll1l11ll1l
字符串2:1ll1ll1ll1ll1l
【常见问题】
- Maven 遇到 jar 包找不到,或者 ClassNotFound 问题。
如果电脑未联网,编辑
d:\maven363\conf\settings.xml
文件。在约71行找到<offline>
标签,设置 Maven 为离线模式。
<offline>true</offline>