ERROR security.UserGroupInformation: PriviledgedActionException as:root cause:org.apache.hadoop.mapred.FileAlreadyExistsException:Output directory hdfs://。。。。/user/root/input already exists
是由于参数不对应引起的,即,讲input文件夹对应到output参数上了。正确的执行jar包的方法为:
2.首先确认中间输出结果路径是不存在的,执行删除方法:
bin/hadoop fs -rmr output
3.创建输入路径input,并上传输入文件至该文件夹。
4.执行指令运行jar包wordcount.jar:
bin/hadoop jar wordcount.jar input output
这里要注意参数个数,如果在打包时就已经指定了执行main方法的类,比如WordCount类,那么在执行上述指令时就不要在指定类了,如果写:
bin/hadoop jar wordcount.jar WordCount input output
那么就需要在工程里面修改对应参数:
FileInputFormat.setInputPaths(conf,new Path(args[0]));
0改为1
FileOutputFormat.setOutputPath(conf,new Path(args[1]));
1改为2
最好的方法就是不再加上WordCount这个参数。