Here is the attempt to exclude the javax.servlet classes:
libraryDependencies ++= Seq(
..
("org.apache.spark" % "spark-core_2.10" % sparkVersion \
% "compile->default" withSources()).exclude("org.mortbay.jetty", "servlet-api"),
Here is my attempt at a MergeStrategy:
mergeStrategy in assembly <<= (mergeStrategy in assembly) { (old) => {
..
case PathList("javax", "servlet", xs @ _*) => MergeStrategy.singleOrError
..
Following shows that multiple copies of the javax.servlet classes are being loaded:
[error] (*:assembly) singleOrError: found multiple files for same target path: [error] C:\Users\s80035683.ivy2\cache\org.mortbay.jetty\servlet-api-2.5\jars\servlet-api-2.5-6.1.14.jar:javax/servlet/Filter.class [error] C:\Users\s80035683.ivy2\cache\javax.servlet\servlet-api\jars\servlet-api-2.5.jar:javax/servlet/Filter.class [error] C:\Users\s80035683.ivy2\cache\org.eclipse.jetty.orbit\javax.servlet\orbits\javax.servlet-3.0.0.v201112011016.jar:javax/servlet/Filter.class [error] C:\Users\s80035683.ivy2\cache\org.mortbay.jetty\servlet-api\jars\servlet-api-2.5-20110124.jar:javax/servlet/Filter.class
Note: this is not a DUPLICATE since similar questions do NOT address this issue. For example +the answer to the following question ("highest version selected by default") is NOT working