TableMapReduceUtils#addDependencyJar is used when configuring a mapreduce job to make sure dependencies of the job are shipped to the cluster. The code depends on finding an actual jar file containing the necessary classes. This is not always the case, for instance, when run at the end of another mapreduce job. In that case, dependency jars have already been shipped to the cluster and expanded in the parent job's run folder. Those dependencies are there, just not available as jars.