-1

事实:

1) 我在分布式设置上运行 Hadoop 1.0.3 和 Hbase 0.92.1,并且我正在尝试通过代码批量导入数据。

2)我通过这种方式将所有必需的jar(包括guava-r09.jar)添加到我的hadoop类路径中:

HADOOP_CLASSPATH=mia-0.7-job.jar:/usr/local/hbase0921/lib/guava-r09.jar:Jama-1.0‌​.2.jar /usr/local/hadoop103/bin/hadoop jar myJar.jar mainPackage/ MyMain -libjars mia-0.7-job.jar,/usr/local/hbe0921/lib/guava-r09.jar,Jama-1.0.2.jar

问题:

尽管 ThreadFactoryBuilder.class 存在于 guava-r09.jar 中,但我遇到以下情况: ClassNotFoundException:com.google.common.util.concurrent.ThreadFactoryBuilder

如果有人能对此有所了解,我将不胜感激。提前致谢。

4

1 回答 1

0

解决方案是通过以下方式将 guava jar 添加到作业的分布式缓存中:

DistributedCache.addFileToClassPath(pathToGuavaAtHDFS, yourConfiguration);

于 2012-08-10T20:44:06.110 回答