我正在尝试使用以下代码在hadoopMap器中获取文件名:
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条答案
按热度按时间o7jaxewo1#
好吧,它就在那里-您的导入行是错误的,因为使用
org.apache.hadoop.mapreduce.lib.input.FileSplit
你为什么不导入org.apache.hadoop.mapreduce.lib.input.FileSplit
? 两个实现都履行了InputSplit
所以它应该是无缝的,除非其他方法类显式地需要特定的FileSplit
实施。