Pig 将通过 ( pigserver.registerjar
) 注册的所有 jar 合并到一个单独的 job.jar 中。这实际上删除了META-INF/MANIFEST.MF
.
我们有一个 UDF,它查找MANIFEST.MF
包含预定义属性的 jar(我们的一个 jar 包含此属性)。当 Pig 删除它时,MANIFEST.MF
我们的 UDF 停止工作。
有没有办法将 jar 添加到类路径而不是 registerjar?或者有什么办法可以克服这个吗?
以下是代码片段:
cluster = new Cluster(new PigContext(ExecType.MAPREDUCE,properties));
PigServer pigServer = new PigServer(ExecType.MAPREDUCE,properties);
pigServer.registerJar("xyz.jar");
PigTest pigTest = new PigTest(pigFile, args, pigServer, cluster);
pigTest.assertOutput("xxyyzz", jsonString);