博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Configuration类
阅读量:4188 次
发布时间:2019-05-26

本文共 837 字,大约阅读时间需要 2 分钟。

先简单说下业务:有一个单独的模块,可以在远程下载Hadoop上的索引,然后合并压缩,最后推送到solr服务器上

原来使用的是Ant打包,外部的jar是在执行主体的jar时cp进环境变量的,所以没有出现今天要说的这个问题,伪代码如下:
先把所有外部的jar的路径,拼接好一个字符串path,然后将path传入下面执行的代码
java -cp  path  com.xxx.xxx.Test
现在要统一项目风格,要把Ant项目转换为Maven项目,大体上没啥问题,由于不写MapReduce,仅仅使用HDFS api操作文件系统上的一些数据,所以引入的依赖如下,并没有hadoop-client
打包也很顺利,但是,当到Linux上,执行远程下载Hadoop上的
数据时,总是报如下的异常:
然后检查了下项目依赖的包,发现不缺依赖的jar,经过找资料,发现原来是maven-assembly 这个插件在打包时,覆盖了hadoop的两个关键属性:

Java代码  
  1. conf.set("fs.hdfs.impl", org.apache.hadoop.hdfs.DistributedFileSystem.class.getName());  
  2.  conf.set("fs.file.impl", org.apache.hadoop.fs.LocalFileSystem.class.getName());  
conf.set("fs.hdfs.impl", org.apache.hadoop.hdfs.DistributedFileSystem.class.getName()); conf.set("fs.file.impl", org.apache.hadoop.fs.LocalFileSystem.class.getName());

如何解决?
方法一:
在实例化Configuration类 , 加入如下属性:
方法二:在项目路径下新建一个core-site.xml配置如下属性即可
 

转载地址:http://gxjoi.baihongyu.com/

你可能感兴趣的文章
构建OpenStack的云基础架构:ManageIQ(转)
查看>>
云管理软件 ManageIQ(转)
查看>>
CentOS 7.0,启用iptables防火墙(转)
查看>>
DISCUZ浅析之COOKIE篇
查看>>
实战DDD(Domain-Driven Design领域驱动设计:Evans DDD)
查看>>
SSH中各个框架的作用以及Spring AOP,IOC,DI详解
查看>>
openstack juno 配置vmware(vcenter、vsphere)
查看>>
远程debug调试(eclipse)之openstack windows
查看>>
PAAS平台对比:OpenShift VS CloudFoundry【51CTO调研报告】
查看>>
JAX-RS(java restful实现讲解)(转)
查看>>
Spring MVC与JAX-RS比较与分析
查看>>
openstack官方docker介绍
查看>>
头痛与早餐
查看>>
[转]在ASP.NET 2.0中操作数据::创建一个数据访问层
查看>>
Linux命令之chmod详解
查看>>
【java小程序实战】小程序注销功能实现
查看>>
(2)考试大纲---信息系统项目管理师考试系列
查看>>
(3)教材目录---信息系统项目管理师考试系列
查看>>
商城基础E-R模型图
查看>>
飞翔的小鸟--键盘事件案例
查看>>