2017-09-18 61 views
0

我使用SBT组装插件创建脂肪罐子喜欢类。我需要一些罐子,这些罐子是默认的hadoop/spark的一部分,但是有更新的版本。星火如何从包装罐子

我想火花工人JVM喜欢打包在我最胖的jar文件,而不是默认的Hadoop /火花发行的版本。我怎样才能做到这一点?

+0

你确定你有你的尤伯杯罐子老班?你想用旧版本替换Spark的哪部分? –

+0

对不起,我在提出问题时犯了一个错误。我需要更新的罐子,但火花带有旧版本。现在,当我们提交一个spark工作时,jvm包含来自spark和hadoop的罐子,然后包含来自fat jar的罐子。但是,因为这些罐子的旧版本已经从火花在内,我在我的脂肪罐子我加入新版本将被丢弃。我希望能够使用这些更新的版本,并放弃来自默认spark/hadoop发行版的任何冲突的jar。简而言之,我想采用后来在classpath中添加的jar。 –

+0

Spark想要替换哪部分?我们在讨论什么罐子? –

回答

0

的解决方案是设置火花{驱动器,执行} .userClassPathFirst在配置。( - conf选项),同时提交火花应用。这将首先包括来自超级罐子的罐子,然后从火花类路径。

其他的解决方案是在SBT组件使用着色。并在我们的超级罐子里放入罐子,以前的罐子里装着火花。