有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

javahadoop输入。FileSplit不能是大小写映射。文件分裂

我正在尝试使用以下代码在Hadoop映射器中获取文件名:

FileSplit fileSplit = (FileSplit) context.getInputSplit();
String filename = fileSplit.getPath().getName();

我导入的库是:

import org.apache.hadoop.mapred.FileSplit;

我得到一个例外:

org.apache.hadoop.mapreduce.lib.input.FileSplit cannot be cast to org.apache.hadoop.mapred.FileSplit

有人能帮忙吗


共 (1) 个答案

  1. # 1 楼答案

    很好,它就在那里-您的导入行是错误的,因为使用org.apache.hadoop.mapreduce.lib.input.FileSplit返回InputSplit实现

    你为什么不导入org.apache.hadoop.mapreduce.lib.input.FileSplit?这两个实现都实现了InputSplit的约定,因此它应该是无缝的,除非其他一些方法类明确要求特定的FileSplit实现