[Nutch]编译hadoop出现object[]无法转换为K[]问题解决

在使用JDK8编译hadoop 1.2.1时遇到object[]无法转换为K[]的问题。通过修改hadoop源码InputSampler.java中319行左右的代码,将`object[] samples = split.sample();`改为`K[] samples = (K[]) Array.newInstance(split.getValueClass(), numSamples);`,解决了该问题。随后重新编译hadoop即可。" 78827791,6683367,深入理解KMP算法:原理与实现,"['算法', '字符串处理', '编程']
摘要由CSDN通过智能技术生成

1. 问题描述

在使用JDK8编译hadoop 1.2.1的时候会出现object[]无法转换为K[]的问题,如下:
这里写图片描述

2. 问题解决

(1)打开hadoop目录下的InputSampler.java文件,路径如下:
hadoop-1.2.1\src\mapred\org\apache\hadoop\mapreduce\lib\partition\InputSampler.java

(2)大概319行找到如下内容:

    final InputFormat inf = 
        ReflectionUtils.newInstance(job.getInputFormatClass(), conf);
    int numPartitions = job.getNumReduceTasks();
    K[] samples = sampler.getSample(inf, job);
    LOG.info
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值