Exception in thread "main" org.apache.hadoop.mapred.FileAlreadyExistsException: Output directory hdfs://namenode:9000/input already exists at org.apache.hadoop.mapreduce.lib.output.FileOutputFormat.checkOutputSpecs(FileOutputFormat.java:146) at org.apache.hadoop.mapreduce.JobSubmitter.checkSpecs(JobSubmitter.java:266)
时间: 2023-08-04 10:08:13 浏览: 616
这个错误提示是因为你尝试在已经存在的目录中写入数据,而 Hadoop 不允许这样做。
你可以通过以下两种方式来解决这个问题:
1. 删除已经存在的目录:你可以使用以下命令删除已经存在的目录:
```
hdfs dfs -rm -r /input
```
这将会删除 `/input` 目录以及其中的所有内容。
2. 更改输出目录:你可以更改输出目录,使其与之前的不同。例如,你可以将输出目录更改为 `/output`,并使用以下命令:
```
hadoop jar <your_jar_file> <your_main_class> <input_directory> /output
```
这将会将处理后的数据输出到 `/output` 目录。
请注意,如果你使用的是 Hadoop 2.x 版本,那么你需要使用以下命令删除目录:
```
hadoop fs -rm -r /input
```
如果你使用的是 Hadoop 3.x 版本,那么你需要使用以下命令删除目录:
```
hdfs dfs -rm -r /input
```
阅读全文