Currently I face some problems with shapeless in spark 2.1 where still an outdated version of shapeless is being used. One of my dependencies(PureConfig current version of 0.8.0) pulls in a newer version of shapeless.
One should be able to use:
assemblyShadeRules in assembly := Seq(
ShadeRule.rename("shapeless.**" -> "new_shapeless.@1").inAll
)
to fix the method not found
problem - but that does not help.
Also
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
)
from Spark not working with pureconfig is suggested (and in my opinion should not be better than the inAll
option) but also fails (with a different error as this is now breaking the library (pureconfig).
Any suggestions to fix the shapeless problem?
edit
currently, shading configuration looks like:
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
)