public static void addDependencyJars(Job job) throws IOException {
    addHBaseDependencyJars(job.getConfiguration());
    try {
      addDependencyJarsForClasses(job.getConfiguration(),
        // when making changes here, consider also mapred.TableMapReduceUtil
        // pull job classes
        job.getMapOutputKeyClass(), job.getMapOutputValueClass(), job.getInputFormatClass(),
        job.getOutputKeyClass(), job.getOutputValueClass(), job.getOutputFormatClass(),
        job.getPartitionerClass(), job.getCombinerClass());
    } catch (ClassNotFoundException e) {
      throw new IOException(e);
    }
  }
Add the HBase dependency jars as well as jars for any of the configured job classes to the job
configuration, so that JobClient will ship them to the cluster and add them to the
DistributedCache.
hbase-mapreduce/src/main/java/org/apache/hadoop/hbase/mapreduce/TableMapReduceUtil.java