在maven中新建hadoop项目说明与mapreduce.framework.name的initialize异常

参考文档
常用maven库及导入本地jar到本地maven库
常用的maven库:

http://mvnrepository.com/
http://search.maven.org/
http://repository.sonatype.org/content/groups/public/
http://people.apache.org/repo/m2-snapshot-repository/
http://people.apache.org/repo/m2-incubating-repository/

环境

win下使用myeclipse远程连接hadoop集群(cdh5.3.0)。
对应的hadoop的三个基础组件的jar包都是2.5.0(mapreduce、common、yarn)
IDE:Myeclipse10.7
需要补充的是,我所有的jar包都有在maven的本地库中,因为之前有编译过hadoop2.5.0的源码,并且maven等已经安装好了,详细请参考(window7中)maven 查看 hadoop2.5.0源码

myeclispe新建maven项目

file =>new =>other =>Maven project,在Create a simple project 前面打钩
这里写图片描述

选择next,输入groupid和artifactid
这里写图片描述
选择finish
groupid和artifactid相当于一个数据库实例与数据库的关系,一个groupid下可以有多个artifactid,一个artifactid相当于一个项目的样子
项目建好后的结构图如下
这里写图片描述
项目中的pom.xml是空的,如下
这里写图片描述
事实上一个简单的maven项目建好了,剩下的就是依赖的问题

增加hadoop的基础依赖

在前面加入d

Hadoop环境中,Apache Commons CSV是一个流行的库,用于处理CSV (Comma-Separated Values) 文件格式。当你需要读取、写入或解析CSV数据,尤其是在MapReduce或Spark等大数据处理框架中,Commons CSV可以帮助简化这个过程。 它提供了一种方便的方式来分割行和列,支持Unicode字符,并允许设置自定义分隔符、引用符以及文本编码。使用Hadoop时,你可以通过以下步骤集成 Commons CSV: 1. **添加依赖**:如果你的项目使用Maven,可以在pom.xml文件中添加Apache Commons CSV的依赖,例如: ```xml <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-csv</artifactId> <version>1.8</version> <!-- 更新至最新稳定版本 --> </dependency> ``` 2. **读取CSV文件**:在MapReduce Job或者Spark作业中,可以创建`CSVRecordReader`或`CSVFormat`实例来读取CSV文件: ```java import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.io.Text; import org.apache.hadoop.mapreduce.Job; import org.apache.hadoop.mapreduce.lib.input.FileInputFormat; import org.apache.hadoop.mapreduce.lib.input.TextInputFormat; import org.apache.hadoop.mapreduce.lib.output.FileOutputFormat; // ... Configuration conf = new Configuration(); conf.set("csv.delimiter", ","); // 设置字段分隔符 FileInputFormat.addInputPath(job, new Path(inputPath)); FileOutputFormat.setOutputPath(job, new Path(outputPath)); // 使用CSVRecordReader Text key = new Text(); // 键 Text value = new Text(); // 值 CSVRecordReader reader = new CSVRecordReader(new CSVParser(conf, CSVFormat.DEFAULT.withFirstRecordAsHeader())); reader.initialize(); // 读取并处理每一行... ``` 3. **写入CSV文件**:使用`CSVPrinter`可以将数据写入到CSV文件: ```java import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.FileSystem; import org.apache.hadoop.fs.Path; import org.apache.hadoop.io.IOUtils; // ... Configuration conf = ...; // 初始化配置 FileSystem fs = FileSystem.get(conf); CSVPrinter printer = new CSVPrinter(fs.create(new Path(outputFilePath), true), CSVFormat.DEFAULT); printer.printRecord(record1, record2, ...); // 打印一行记录 IOUtils.closeQuietly(printer); ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值