6-部署本地开发环境(hdfs)
- 官网下载 jdk 和maven(已提供则无需下载)
jdk下载地址: Java Archive Downloads - Java SE 8u211 and later

Maven下载地址Maven Releases History – Maven

选择jdk1.8 和maven 3.9.14
2.安装配置Windows上的jdk
(1)安装jdk


注意这个安装地址: D:\Software\Java\jdk-1.8\ 等下会用到。



(2)配置jdk环境

找到我的电脑,右键选择“属性”

点击“高级系统设置”

点击“环境变量”

找到系统变量,新建一个。变量名JAVA_HOME(代表你的JDK安装路径),值对应的是你的JDK的安装路径。

在系统变量里面找一个变量名是PATH的变量,需要在它的值域里面追加一段如下的代码:
%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin

然后点击“确定”,“确定”,“确定”
(3)验证
Win+R键
输入cmd

看到以上结果,则已成功在windows系统上配置了java环境。
3. 配置Maven环境
(1)解压Maven压缩包

(2)配置Maven环境

找到我的电脑,右键选择“属性”

点击“高级系统设置”

点击“环境变量”

在“系统变量”选项组中单击“新建”按钮,打开“新建系统变量”对话框,设置“变量名”为“MAVEN_HOME”,设置“变量值”为刚才解压的目录,如图,然后单击“确定”按钮。

返回“环境变量”对话框,将MAVEN_HOME 配置到系统环境变量Path 中。双Path变量,在打开的“编辑环境变量”对话框中单击“新建”按钮,在文本框中输入%MAVEN_HOME%\bin,如图。

然后点击“确定”,“确定”,“确定”
(3)验证
Win+R键
输入cmd

看到以上结果,则已成功在windows系统上配置了Maven环境。
在一个磁盘中创建一个文件夹,命名为repository。具体路径依据个人情况而定,建议
放到非C 盘,且容量较大的磁盘。

打开Maven 安装目录,进入conf 目录,打开settings.xml 文件进行编辑,如图所示。

找到localRepository 配置,修改为刚才创建的目录,如图所示。注意要将此项配
置移出注释。

保存配置文件后,在Windows 的命令提示符窗口中执行如下命令,检验是否设置成功:
mvn help:system

打开刚才创建的文件夹,查看是否有文件生成,若有文件生成则代表配置已生效,如
图所示。

4. 安装配置Windows上的Hadoop环境变量
(1)下载 Hadoop 的 Windows 二进制包,并设置环境变量。(已下载则不用)
下载 Hadoop Windows Binaries:GitHub 资源:通常可以从https://github.com/cdarlint/winutils 下载对应版本的 hadoop-3.x.x 文件夹。
(2)解压并配置:
将下载的 Hadoop 文件夹解压到一个目录,例如 D:\hadoop-3.1.2。
设置系统环境变量:
变量名:HADOOP_HOME
变量值:D:\hadoop-3.1.32(实际路径)
更新 Path:将 %HADOOP_HOME%\bin 添加到系统的 Path 变量中。
5.IntelliJ IDEA 创建Maven项目
(1)初始化设置,打开IntelliJ IDEA 选择 Customize 点击“ALL settings” 修改文件字符编码

改成 UTF-8

(2)初始化设置,修改Maven 配置
修改Maven的默认配置目录(之前设置的Maven目录)

点击“Apply”再点击“OK”
点击“Plugins”搜索“Chinese”选择第二个,点击“Install”安装中文包


下载完成后点击“Restart IDE”重新启动该软件即可
(3)创建Maven 项目。打开IDEA,新建Maven 项目,如图所示,设置项目名称为helloworld,并设置项目路径,如图所示。

点击“新建项目”创建

点击“Create”

找到设置后,重新更改Maven的目录,点击应用。
找到pom.xml 配置hadoop环境

添加以下红色文本内容到pom.xml中间
<?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>helloworld</artifactId>
<version>1.0-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>RELEASE</version>
</dependency>
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-hdfs</artifactId>
<version>3.1.3</version>
</dependency>
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-client</artifactId>
<version>3.1.3</version>
</dependency>
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-common</artifactId>
<version>3.1.3</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>2.8.2</version>
</dependency>
</dependencies>
<properties>
<maven.compiler.source>8</maven.compiler.source>
<maven.compiler.target>8</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
</project>
配置完后,点击右上角的“M”
至此,完成创建项目的整个流程。
(4)新建一个java类MkdirDemo
MkdirDemo 类实现 HDFS 上目录和文件的创建、删除操作,并提供遍历目录的功能。


点击“Enter”
编写以下代码:
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileStatus;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
import java.io.IOException;
import java.net.URI;
import java.net.URISyntaxException;
/**
* HDFS 目录与文件的创建、删除操作示例
*/
public class MkdirDemo {
// 获取 HDFS 文件系统对象
public static FileSystem getFileSystem() throws IOException, URISyntaxException {
Configuration conf = new Configuration();
URI uri = new URI("hdfs://192.168.47.201:8020");
return FileSystem.get(uri, conf);
}
// 遍历指定目录并打印其下所有文件/目录信息
public static void list(String dir) throws Exception {
FileSystem fileSystem = getFileSystem();
FileStatus[] listStatus = fileSystem.listStatus(new Path(dir));
for (FileStatus fileStatus : listStatus) {
boolean isDir = fileStatus.isDirectory();
String name = fileStatus.getPath().toString();
System.out.println(isDir + " " + name);
}
fileSystem.close(); // 关闭资源
}
// 创建目录(支持递归创建多级目录)
public static void mkdir(String path) throws Exception {
FileSystem fileSystem = getFileSystem();
boolean result = fileSystem.mkdirs(new Path(path));
System.out.println("创建目录 " + path + " : " + (result ? "成功" : "失败"));
list("/"); // 创建后展示根目录内容
fileSystem.close();
}
// 创建空文件
public static void create(String path) throws Exception {
FileSystem fileSystem = getFileSystem();
fileSystem.create(new Path(path)).close(); // 创建文件后立即关闭输出流
System.out.println("创建文件 " + path + " 成功");
list("/");
fileSystem.close();
}
// 删除目录或文件(recursive = true 表示递归删除)
public static void delete(String path) throws Exception {
FileSystem fileSystem = getFileSystem();
boolean result = fileSystem.delete(new Path(path), true);
System.out.println("删除 " + path + " : " + (result ? "成功" : "失败"));
list("/");
fileSystem.close();
}
public static void main(String[] args) throws Exception {
// 创建目录
mkdir("/bigdata");
// 创建文件
create("/demo.txt");
// 删除目录(若需要)
// delete("/bigdata");
}
}

代码功能:在hdfs目录下新建了一个bigdata子目录,创建了一个demo.txt文件
在浏览器输入:192.168.47.201:9870

以上代码执行后无问题,那么恭喜你,已经学会了部署本地开发环境了!!!
&spm=1001.2101.3001.5002&articleId=162543236&d=1&t=3&u=978c0b0c16f7447eb7c14241d99cf76b)
1208

被折叠的 条评论
为什么被折叠?



