hadoop第三坑

看书的进度比我预计的要慢一些。坑太多,需要慢慢爬。
依旧是MaxTemperature的联系。添加了一些测试MRUnit的测试之类的。
遇到的问题如下:
1 MRUnit的依赖添加不进来。
在dependency导入是,1.1.0以及1.0.0版本均有问题。然后我换到0.8.0-incubating版本忽然就好了。由于还没有去看源码,所以没有办法确认是什么版本差异导致了这个原因。

2 遇到如下报错:
Exception in thread “main” java.lang.VerifyError: Bad type on operand stack
Exception Details:
Location:
org/apache/hadoop/mapred/JobTrackerInstrumentation.create(Lorg/apache/hadoop/mapred/JobTracker;Lorg/apache/hadoop/mapred/JobConf;)Lorg/apache/hadoop/mapred/JobTrackerInstrumentation; @5: invokestatic
Reason:
Type ‘org/apache/hadoop/metrics2/lib/DefaultMetricsSystem’ (current frame, stack[2]) is not assignable to ‘org/apache/hadoop/metrics2/MetricsSystem’
Current Frame:
bci: @5
flags: { }
locals: { ‘org/apache/hadoop/mapred/JobTracker’, ‘org/apache/hadoop/mapred/JobConf’ }
stack: { ‘org/apache/hadoop/mapred/JobTracker’, ‘org/apache/hadoop/mapred/JobConf’, ‘org/apache/hadoop/metrics2/lib/DefaultMetricsSystem’ }
Bytecode:
0000000: 2a2b b200 03b8 0004 b0
这个问题比较难找,stackOverFlow上有相同的报错,当事的答主是由于jar包冲突导致,移除多余不要的包就好了。然而我的项目是maven项目,所以不可能是由于导入多余jar包导致的。但其实报错中也说的很清楚了,DefaultMetricsSystem不能被分配为MetricsSystem。当时猜测是由于hadoop版本导致的,实验了一下,确实是这样,我使用的是3.0.0-alpha的版本,降至2.2-2.6的版本就好了。
当然还碰到一些其他的坑。比如reduce方法没有重写成功之类的,大多由于眼瞎导致。
有一些要注意的问题:大胆尝试。感觉自己在hadoop这里还是有些太过于谨慎。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值