Java Hadoop获取文件未找到异常
我正在尝试用单节点hadoop集群运行一个示例程序。 当我运行一个示例程序(jar文件)时,我遇到了一个异常 我将Java Hadoop获取文件未找到异常,java,hadoop,hdfs,Java,Hadoop,Hdfs,我正在尝试用单节点hadoop集群运行一个示例程序。 当我运行一个示例程序(jar文件)时,我遇到了一个异常 我将core site.xml配置为localhost:9000。我将文本文件正确地放入HDFS中,可以通过执行hadoop dfs-ls/tmp命令查看 谢谢 13/11/27 05:47:52信息映射。LocalJobRunner:映射任务执行器完成。 13/11/27 05:47:52警告映射。本地JobRunner:job_local617545423_0001 java.lan
core site.xml
配置为localhost:9000。我将文本文件正确地放入HDFS中,可以通过执行hadoop dfs-ls/tmp
命令查看
谢谢
13/11/27 05:47:52信息映射。LocalJobRunner:映射任务执行器完成。
13/11/27 05:47:52警告映射。本地JobRunner:job_local617545423_0001
java.lang.Exception:java.io.FileNotFoundException:/tmp/Jetty\u 0\u 0\u 50090\u secondary\u\u y6aanv(是一个目录)
位于org.apache.hadoop.mapred.LocalJobRunner$Job.run(LocalJobRunner.java:354)
由以下原因引起:java.io.FileNotFoundException:/tmp/Jetty\u 0\u 0\u 0\u 50090\u secondary\u\u y6aanv(是一个目录)
在java.io.FileInputStream.open(本机方法)
位于java.io.FileInputStream。(FileInputStream.java:138)
位于org.apache.hadoop.fs.RawLocalFileSystem$TrackingFileInputStream。(RawLocalFileSystem.java:71)
位于org.apache.hadoop.fs.RawLocalFileSystem$LocalFSFileInputStream。(RawLocalFileSystem.java:107)
位于org.apache.hadoop.fs.RawLocalFileSystem.open(RawLocalFileSystem.java:182)
位于org.apache.hadoop.fs.ChecksumFileSystem$ChecksumFSInputChecker。(ChecksumFileSystem.java:126)
位于org.apache.hadoop.fs.ChecksumFileSystem.open(ChecksumFileSystem.java:283)
位于org.apache.hadoop.fs.FileSystem.open(FileSystem.java:427)
位于org.apache.hadoop.mapreduce.lib.input.LineRecordReader.initialize(LineRecordReader.java:75)
位于org.apache.hadoop.mapreduce.lib.input.KeyValueLineRecordReader.initialize(KeyValueLineRecordReader.java:65)
位于org.apache.hadoop.mapred.MapTask$NewTrackingRecordReader.initialize(MapTask.java:521)
位于org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:763)
位于org.apache.hadoop.mapred.MapTask.run(MapTask.java:364)
位于org.apache.hadoop.mapred.LocalJobRunner$Job$MapTaskRunnable.run(LocalJobRunner.java:223)
位于java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
位于java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
在java.util.concurrent.FutureTask.run(FutureTask.java:166)中
位于java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
位于java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
运行(Thread.java:724)
13/11/27 05:47:52信息映射。作业客户端:映射35%减少0%
即使在linux文件系统中,目录也不能位于作业的输入路径目录中 上面的
tmp/Jetty\u 0\u 0\u 0\u 50090\u secondary\u y6aanv(是一个目录)位于org.apache.hadoop.mapred.LocalJobRunner$Job.run(LocalJobRunner.java:354),原因是:java.io.FileNotFoundException:/tmp/Jetty\u 0\u 0\u 0\u 0\u 50090\u secondary\u y6aanv
Jetty_0_0_0_0_50090_secondary__y6aanv
是输入路径目录中的一个目录
我更改了输入路径,它现在正在工作。您能给我看一下您的代码吗?这就是我正在尝试的代码。你能通过把你的文件放在HDFS的/or/user目录中来尝试同样的代码吗?谢谢,我现在明白了。看看答案。