我正在尝试运行一个运行spark 2.x代码的oozie spark动作。按照Hortonwork的HDP文档中提到的步骤,然而,火花动作失败,错误"杰克逊版本太旧2.4.4"。 Spark2 oozie sharelib jars拥有2.6.5版本的jackson罐子,但oozie的oozie-sharelib罐子里有2.4.4版本的jackson罐子。 因此,有时候作业运行正常,但有时它引用了版本不匹配或NoSuchMethodExists异常(再次由于不匹配的jar)。
我不想从oozie'删除2.4.4版本的罐子。 oozie sharelib,但想知道为什么这些jar会在spark动作运行时添加到类路径中。有没有办法只从/ user / oozie / share / lib // spark2添加jar并限制任何其他jar加入classpath?