@InterfaceAudience.Public @InterfaceStability.Stable public interface Tool extends Configurable
Tool, is the standard for any Map-Reduce tool/application. 
 The tool/application should delegate the handling of 
 
 standard command-line options to ToolRunner.run(Tool, String[]) 
 and only handle its custom arguments.
Here is how a typical Tool is implemented:
     public class MyApp extends Configured implements Tool {
     
       public int run(String[] args) throws Exception {
         // Configuration processed by ToolRunner
         Configuration conf = getConf();
         
         // Create a JobConf using the processed conf
         JobConf job = new JobConf(conf, MyApp.class);
         
         // Process custom command-line options
         Path in = new Path(args[1]);
         Path out = new Path(args[2]);
         
         // Specify various job-specific parameters     
         job.setJobName("my-app");
         job.setInputPath(in);
         job.setOutputPath(out);
         job.setMapperClass(MyMapper.class);
         job.setReducerClass(MyReducer.class);
         // Submit the job, then poll for progress until the job is complete
         RunningJob runningJob = JobClient.runJob(job);
         if (runningJob.isSuccessful()) {
           return 0;
         } else {
           return 1;
         }
       }
       
       public static void main(String[] args) throws Exception {
         // Let ToolRunner handle generic command-line options 
         int res = ToolRunner.run(new Configuration(), new MyApp(), args);
         
         System.exit(res);
       }
     }
 GenericOptionsParser, 
ToolRunner| 修飾子とタイプ | メソッドと説明 | 
|---|---|
| int | run(String[] args)Execute the command with the given arguments. | 
getConf, setConfCopyright © 2016 Apache Software Foundation. All rights reserved.