eclipse连接HDFS
  ILwIY8Berufg 2023年11月02日 91 0
1.文件准备

百度云链接

提取码:t72q

eclipse连接HDFS_JAVA

  • 解压hadoop压缩包
  • 将winutils.exe放在hadoop的安装包的bin目录下
  • 将hadoop.dll放在windows下的System32目录下
  • 将hadoop-eclipse-plugin-2.7.5.jar 放在eclipse的plugins目录下
2.配置windows下的环境变量

因为hadoop是在JDK的基础上运行的所以这里首先配置一下JDK

  • JAVA_HOME
    在系统环境变量中点击新建

加入自己JDK的路径,如果你的路径里面有空格,要进行转译,比如我这里Program Files中有空格,我就给他加了英文下的双引号进行转译,这样做是为了防止后面配置hadoop的时候出现找不到JAVA_HOME的问题

"F:\Program Files"\Java\jdk1.8.0_51

eclipse连接HDFS_hadoop_02

  • CLASSPATH
    在系统变量下找到CLASSPATH

点击编辑,在变量值上加入

.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
  • Path
    在系统环境变量下找到Path,点击编辑

点击新建加入两行

%JAVA_HOME%\bin
%JAVA_HOME%\jre\bin

eclipse连接HDFS_JAVA_03

然后win+r 打开cmd窗口

输入

java -version

javac -version

如图所示则jdk配置成功

eclipse连接HDFS_JAVA_04

下面开始配置hadoop

  • HADOOP_HOME

与上面一样的配置HADOOP_HOME,输入自己的路径

F:\dev\hadoop-2.7.6

eclipse连接HDFS_hdfs_05

  • PATH

在PATH中添加两行

%HADOOP_HOME%\bin
%HADOOP_HOME%\sbin

eclipse连接HDFS_hdfs_06

最后同样的打开cmd进行测试

eclipse连接HDFS_hadoop_07

如果出现了找不到JAVA_HOME则检查自己的路径里面有没有空格,如果有的话就要转译

3.eclipse的连接配置
  • 在eclipse工具栏找window---> show view ---> other--->搜索 map选择

eclipse连接HDFS_hdfs_08

在出现的窗口中右键新建

eclipse连接HDFS_JAVA_09

这里根据需求配置,我这里是将hadoop01作为DFS Master,hadoop03作为Map/Reduce Master所以我取消了勾选

eclipse连接HDFS_JAVA_10

可以在左侧Project Explorer看到如图所示文件夹目录则配置成功

eclipse连接HDFS_hadoop_11

下面导入jar包

需要导入的jar包在F:\dev\hadoop-2.7.6\share\hadoop\common、F:\dev\hadoop-2.7.6\share\hadoop\common\lib、F:\dev\hadoop-2.7.6\share\hadoop\hdfs\lib

eclipse连接HDFS_hadoop_12

eclipse连接HDFS_hadoop_13

eclipse连接HDFS_hadoop_14

选择项目名称右键 -> Build Path -> Configure Build Path -> Add Library -> User Library -> Next -> New ->取名为hadoop-common 然后选中hadoop-common -> Add External JARs 将\hadoop\common文件夹下的三个jar与\hadoop\common\lib文件夹中的所有包导入进去

eclipse连接HDFS_hadoop_15

同样的再添加第二个取名为hadoop-hdfs将\hadoop\hdfs\lib下的所有包添加进去即可

我们这里要连接hdfs需要配置文件,新建一个config配置文件夹,将配置文件放在里面

eclipse连接HDFS_JAVA_16

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!--
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.
  You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License. See accompanying LICENSE file.
-->

<!-- Put site-specific property overrides in this file. -->

<configuration>
 <property>
 <name>fs.defaultFS</name>
 <value>hdfs://hadoop01:9000</value>
</property>
<property>
 <name>hadoop.tmp.dir</name>
 <value>/home/hadoop/data/hadoopdata</value>
</property>
</configuration>

最后运行下面的代码(set里面的参数根据自己的实际需求来)

package com.testHdfs;
/**
 * 测试链接
 */

import java.io.IOException;

import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;

public class TestConnection {
	public static void main(String[] args) throws IOException {
		Configuration conf = new Configuration();
		FileSystem fs = FileSystem.get(conf);
		conf.set("fs.defaultFS", "hdfs://hadoop01:9000");
		System.out.println(fs);
	}

}

如图所示则配置成功

eclipse连接HDFS_hdfs_17

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读
  KRe60ogUm4le   2024年04月26日   30   0   0 java算法
  KRe60ogUm4le   2024年05月03日   56   0   0 javascala
ILwIY8Berufg
最新推荐 更多

2024-05-31