Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/398.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 多线程apper拒绝找到Jar_Java_Multithreading_Hadoop_Emr - Fatal编程技术网

Java 多线程apper拒绝找到Jar

Java 多线程apper拒绝找到Jar,java,multithreading,hadoop,emr,Java,Multithreading,Hadoop,Emr,出于某种原因,每次我运行这个程序(在eclipse和EMR上)时,我都会收到消息13/07/18 13:22:23 WARN mapred.JobClient:No job jar file set。可能找不到用户类。请参阅JobConf(类)或JobConf#setJar(字符串)。几个print语句之后,我发现我的jarfile顽固地保持为空。我做错了什么 public static void main(String[] args) throws Exception {

出于某种原因,每次我运行这个程序(在eclipse和EMR上)时,我都会收到消息13/07/18 13:22:23 WARN mapred.JobClient:No job jar file set。可能找不到用户类。请参阅JobConf(类)或JobConf#setJar(字符串)。几个print语句之后,我发现我的jarfile顽固地保持为空。我做错了什么

public static void main(String[] args) throws Exception {
            Job job = new Job();
            job.setJarByClass(Driver.Map.class);


             FileInputFormat.addInputPath(job, new Path(args[0]));
             FileOutputFormat.setOutputPath(job, new Path(args[1]));

            MultithreadedMapper.setMapperClass(job, Driver.Map.class);
            MultithreadedMapper.setNumberOfThreads(job, 64);

            job.setMapperClass(MultithreadedMapper.class);

            System.out.println(job.getJar());
            System.out.println(MultithreadedMapper.getNumberOfThreads(job) + "  "
                    + MultithreadedMapper.getMapperClass(job));

            job.setOutputKeyClass(Text.class);
            job.setOutputValueClass(Text.class);
            job.setNumReduceTasks(0);
            Config.LoggerProvider = LoggerProvider.DISABLED;


            job.waitForCompletion(true);


        }

我设置它来查找驱动程序,并告诉它包名,在eclipse上没有帮助,但在emr中它能够找到jar。不幸的是,它似乎没有做任何事。使用一些打印语句,我发现一切都是它应该做的,但我的映射器仍然没有被调用。