Eclipse集成hadoop插件开发环境
admin
2023-01-31 18:22:48
0

首先在win10下搭建好hadoop的环境,hadoop可以运行
解压hadoop2.7.7的安装包和源码包,解压后创建一个空的目录,把解压的源码包,安装包下share/hadoop下的除了kms的目录包外其他包下的所有jar包都拷贝到刚新建的空目录中。大概有120多个
把之前安装win10的hadoop/bin下的hadoop.dll 放到c:windows/system32下,重启电脑
检查之前安装的本地hadoop环境是否配置了hadoop的环境变量和hadoop的HADOOP_USER_NAME默认用root。把hadoop.dll文件放到C盘windows/system32下
在安装eclipse路径下plugins,dropins,把hadoop-eclipse-plugin-2.6.0.jar(可以对应下载自己版本的插件)放到该路径/eclipse/plugins/ 和/eclipse/dropins下,启动eclipse
Eclipse集成hadoop插件开发环境
安装成功

 6.在ecplise里面window->preferences里找到 Hadoop Map/Reduce 把本地安装的hadoop路径指定到这。
 Eclipse集成hadoop插件开发环境
7.先确认hadoop集群是否启动,然后
Eclipse集成hadoop插件开发环境
在第二步的Map/Reduce Locations里新建
Eclipse集成hadoop插件开发环境
Eclipse集成hadoop插件开发环境
然后点完成,就能看到ecplise连接hadoop了
Eclipse集成hadoop插件开发环境
如果看不到点击localhadoop右键reconnection 重新连
8.导入包
eclipse里面 windows-》preferences->Java ->bulid path-》user libraries
Eclipse集成hadoop插件开发环境
然后 ecplise 创建一个工程: File -> new -> project - >java -> java project
Eclipse集成hadoop插件开发环境
Eclipse集成hadoop插件开发环境
打jar包的时候不用把hadoopLib jar打进去只用打程序
点到工程,把JUnit4包引进去。然后创建一个conf文件夹在工程里,在conf目录下再创建一个HA目录
Eclipse集成hadoop插件开发环境
把hadoop集群中的core-site.xml 和 hdfs-site.xml 添加到HA目录中
点中HA文件夹

Eclipse集成hadoop插件开发环境
Eclipse集成hadoop插件开发环境
Eclipse集成hadoop插件开发环境
测试代码:
package com.test.hadoop.hdfs;

import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.BlockLocation;
import org.apache.hadoop.fs.FSDataInputStream;
import org.apache.hadoop.fs.FSDataOutputStream;
import org.apache.hadoop.fs.FileStatus;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.io.IOUtils;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;

public class TestHDFS {

Configuration conf;
FileSystem fs;

@Before
public void conn() throws IOException {
    conf = new Configuration(true);
    fs = FileSystem.get(conf);
}

@After
public void close() throws IOException {
    fs.close();
}

//创建目录
@Test
public void mkDir() throws IOException {
    Path ifile = new Path("/ecpliseMkdir");
    if(fs.exists(ifile)) {
        fs.delete(ifile, true);
    }
    fs.mkdirs(ifile);
}

//上传文件
@Test
public void upload() throws IOException {
    Path ifile = new Path("/ecpliseMkdir/hello.txt");
    FSDataOutputStream output = fs.create(ifile);
    InputStream input = new BufferedInputStream(new FileInputStream(new File("d:\\ywcj_chnl_risk_map_estimate_model.sql")));
    IOUtils.copyBytes(input, output, conf, true);
}

//下载
@Test
public void downLocal() throws IOException {
    Path ifile = new Path("/ecpliseMkdir/hello.txt");
    FSDataInputStream open = fs.open(ifile);
    File newFile = new File("d:\\test.txt");
    if(!newFile.exists()) {
        newFile.createNewFile();
    }
    BufferedOutputStream output = new BufferedOutputStream(new FileOutputStream(newFile));
    IOUtils.copyBytes(open, output, conf, true);

}

//获取block 块信息
@Test
public void blockInfo() throws IOException {
    Path ifile = new Path("/ecpliseMkdir/hello.txt");
    FileStatus fsu = fs.getFileStatus(ifile);
    BlockLocation[] fileBlockLocations = fs.getFileBlockLocations(ifile, 0, fsu.getLen());
    for(BlockLocation b : fileBlockLocations) {
        System.out.println(b);
    }
}

//删除文件
@Test
public void deleteFile() throws IOException {
    Path ifile = new Path("/ecpliseMkdir/hello.txt");
    boolean delete = fs.delete(ifile, true);
    if(delete) {
        System.out.println("删除成功---------");
    }
}

}

相关内容

热门资讯

玩家最新攻略“酉阳大贰.究竟有... 玩家最新攻略“酉阳大贰.究竟有挂吗?”必胜开挂神器您好,酉阳大贰这个游戏其实有挂的,确实是有挂的,需...
【第一资讯】“万人玩麻将.可以... 有 亲,根据资深记者爆料万人玩麻将是可以开挂的,确实有挂(咨询软件无需打...
我来教教您“丫丫衡阳字牌.开挂... 我来教教您“丫丫衡阳字牌.开挂器?”太坑了原来有挂您好,丫丫衡阳字牌这个游戏其实有挂的,确实是有挂的...
最新民调:赖清德仍未脱困,岛内... 海峡导报综合报道 “台湾民意基金会”最新民调表明,四成三台湾民众赞同赖清德处理政事的方式,四成九不赞...
玩家最新攻略“非凡卡五星.辅助... 您好:非凡卡五星这款游戏可以开挂,确实是有挂的,需要了解加客服微信【9784099】很多玩家在这款游...
云南兰坪县企业向澜沧江支流倾倒... 澎湃新闻记者 熊强12月9日,网友反映云南怒江州兰坪县河西乡有企业向澜沧江支流倾倒工业废渣,引发关注...
【今日要闻】“闲来贵州麻将.辅... 有 亲,根据资深记者爆料闲来贵州麻将是可以开挂的,确实有挂(咨询软件无需...
【第一资讯】“微信拼三张.辅助... 【第一资讯】“微信拼三张.辅助开挂神器?”其实是有挂您好,微信拼三张这个游戏其实有挂的,确实是有挂的...
终于懂了“琼雀海南麻将.怎么装... 网上科普关于“琼雀海南麻将有没有挂”话题很是火热,小编也是针对琼雀海南麻将作*弊开挂的方法以及开挂对...
终于明白“阿道夫十三水.开挂神... 网上科普关于“阿道夫十三水有没有挂”话题很是火热,小编也是针对阿道夫十三水作*弊开挂的方法以及开挂对...