如何使用hadoop 1.3让oozie的用户jar优先于hadoop jar

时间:2015-03-01 19:07:29

标签: hadoop oozie

我正在使用hadoop 1.3和oozie。我的java动作引用了一个方法commons-collection 1.7。这在以前的版本中不存在。 jar是一个包含所有类的胖jar,我把它放在我的工作流程下的lib文件夹中。 OOzie在启动我的提交操作时指的是一个较旧的hadoop jar,它位于类路径上而不是给用户jar优先级。有没有什么方法可以优先使用用户罐? oozie.launcher.mapreduce.task.classpath.user.precedence = true将无效,因为这是hadoop 1.3而不是hadoop2。

1 个答案:

答案 0 :(得分:1)

如果你正在使用Maven,一种方法是使用Maven Shade Plugin来遮蔽jar中有问题的类。这将透明地重命名jar中的类,以便它们不会与Oozie或Hadoop以其他方式放在类路径上的相同类的不同版本冲突。