火花中的无形阴影不起作用 - 方法仍未找到

时间:2017-12-09 16:23:06

标签: apache-spark classpath shapeless sbt-assembly shading

目前我在Spark 2.1中面临一些无形状的问题,其中仍然使用过时的无形状版本。我的一个依赖项(PureConfig当前版本的0.8.0)引入了一个更新版本的无形。

一个人应该可以使用:

assemblyShadeRules in assembly := Seq(
  ShadeRule.rename("shapeless.**" -> "new_shapeless.@1").inAll
)

修复method not found问题 - 但这没有帮助。

另外

assemblyShadeRules in assembly := Seq(
  ShadeRule.rename("shapeless.**" -> "shadeshapless.@1")
    .inLibrary("com.chuusai" % "shapeless_2.11" % "2.3.2")
    .inLibrary("com.github.pureconfig" %% "pureconfig" % "0.8.0")
    .inProject
)
建议来自Spark not working with pureconfig

(在我看来不应该比inAll选项更好)但是也会失败(因为现在打破了库(pureconfig)而出现了不同的错误。) p>

有任何解决无形问题的建议吗?

修改

目前,着色配置如下:

assemblyShadeRules in assembly := Seq(
  ShadeRule.rename("shapeless.**" -> "shadeshapless.@1")
    .inLibrary("com.chuusai" % "shapeless_2.11" % "2.3.2")
    .inLibrary("com.github.pureconfig" % "pureconfig_2.11" % pureconfigVersion)
    .inLibrary("com.github.pureconfig" % "pureconfig-macros_2.11" % pureconfigVersion)
    .inProject
)

1 个答案:

答案 0 :(得分:1)

这并不是一个真正的答案,但是从spark 2.2起,随着spark依赖关系的升级,它可以正常工作。