Dependency issue with Scalding and Hadoop with sbt-assembly
The order of the directives is important. You update the assembly settings, to overwrite it again a line later. First defining assemblySettings and then updating it will solve it.
The updated build.sbt:
import AssemblyKeys._assemblySettingsmergeStrategy in assembly <<= (mergeStrategy in assembly) { (old) => { case PathList("org", "apache", "jasper", xs @ _*) => MergeStrategy.last case x => old(x) }}…
After that you will discover that there are a lot more conflicting classes and other files. In this case you will require the following merges:
case PathList("org", "apache", xs @ _*) => MergeStrategy.lastcase PathList("javax", "servlet", xs @ _*) => MergeStrategy.lastcase PathList("com", "esotericsoftware", xs @ _*) => MergeStrategy.lastcase PathList("project.clj") => MergeStrategy.lastcase PathList("overview.html") => MergeStrategy.lastcase x => old(x)
Note that using merge strategies for class files may give problems, caused by incompatible versions of that specific class. If that is the case then your problem is larger, because then the dependencies are incompatible with each other. You have then to resort to removing the dependency and find/make a compatible version.