0
使用HBaseTestingUtility我会启动一个minicluster。类路径中的分布式缓存Jar,但获取ClassNotFoundException
testUtil = new HBaseTestingUtility(configuration);
testUtil.startMiniCluster();
,并提供我的罐子在DistributedCache的classpath
final String aJarResourcePath = Thread.currentThread().getContextClassLoader()
.getResource("abc/a-1.0.jar").getPath();
final FileSystem fs = FileSystem.get(configuration);
final Path pathToArtifacts = new Path("/Runtime/a-artifacts");
fs.mkdirs(pathToArtifacts);
fs.copyFromLocalFile(new Path(aJarResourcePath), pathToArtifacts));
DistributedCache.addFileToClassPath(disqualified, configuration);
在我MapFn我使用的罐子-1.0.jar的地方。我能看到罐子在MapFn
final Path[] fus = DistributedCache.getFileClassPaths(config);
所以我想罐子在classpath中并指向HDFS的位置,但我得到的ClassNotFoundException试图创建一个对象。我不确定发生了什么事,请帮忙。