目錄
一、配置hadoop3.1.3 windows環境依賴
將 \資料\01_jar包\03_Windows依賴\hadoop-3.0.0放到任意一個目錄
配置環境變量
%HADOOP_HOME%:D:\SoftWare\hadoop-3.1.0
添加到path路徑
%HADOOP_HOME%\bin
在cmd中測試
winutils是否可用
注意
1.測試-winutils如果不行,重啟動電腦
2.有些電腦可能會有些問題(比如無法在代碼中上傳或者下載)需要將:把hadoop.dll 和 winutils.exe放 到c:\windows\system32目錄下就好了
二、idea中的配置
創建工程/模塊
添加pom.xml依賴
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-slf4j-impl</artifactId>
<version>2.12.0</version>
</dependency>
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-client</artifactId>
<version>3.1.3</version>
</dependency>
</dependencies>
注意 :IDEA中maven的配置
日志添加--配置log4j2.xml
在項目的src/main/resources目錄下,新建一個文件,命名為“log4j2.xml”,在文件中填入
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="error" strict="true" name="XMLConfig">
<Appenders>
<!-- 類型名為Console,名稱為必須屬性 -->
<Appender type="Console" name="STDOUT">
<!-- 布局為PatternLayout的方式,
輸出樣式為[INFO] [2018-01-22 17:34:01][org.test.Console]I'm here -->
<Layout type="PatternLayout"
pattern="[%p] [%d{yyyy-MM-dd HH:mm:ss}][%c{10}]%m%n" />
</Appender>
</Appenders>
<Loggers>
<!-- 可加性為false -->
<Logger name="test" level="info" additivity="false">
<AppenderRef ref="STDOUT" />
</Logger>
<!-- root loggerConfig設置 -->
<Root level="info">
<AppenderRef ref="STDOUT" />
</Root>
</Loggers>
</Configuration>
創建測試類Hdfsdemo
public class Hdfsdemo{
@Test
public void testMkdirs() throws IOException, InterruptedException, URISyntaxException{
// 1 獲取文件系統
Configuration configuration = new Configuration();
// 配置在集群上運行
// configuration.set("fs.defaultFS", "hdfs://hadoop102:8020");
// FileSystem fs = FileSystem.get(configuration);
FileSystem fs = FileSystem.get(new URI("hdfs://hadoop102:8020"), configuration, "atguigu");
// 2 創建目錄
fs.mkdirs(new Path("/1108/daxian/banzhang"));
// 3 關閉資源
fs.close();
}
}
更多參考HDFS【Java API操作】
報錯
注意"hdfs://hadoop102:8020"的檢查路徑以及端口號、hadoop集群是否啟動