¿Cómo construir un Uber JAR (Fat JAR) usando SBT dentro de IntelliJ IDEA?

Estoy usando SBT (dentro de IntelliJ IDEA) para construir un proyecto simple de Scala.

Me gustaría saber cuál es elmanera más simple para construir unUber JAR archivo (también conocido como Fat JAR, Super JAR).

Actualmente estoy usando SBT pero cuando envío mi archivo JAR aApache Spark Obtuve el siguiente error:

Excepción en el subproceso "main" java.lang.SecurityException: resumen de archivo de firma no válido para los atributos principales del manifiesto

O este error durante el tiempo de compilación:

java.lang.RuntimeException: deduplicate: diferentes contenidos de archivo encontrados en lo siguiente:
RUTA \ DEPENDENCIA.jar: META-INF / DEPENDENCIAS
PATH \ DEPENDENCY.jar: META-INF / MANIFEST.MF

Esoparece es porque algunas de mis dependencias incluyen archivos de firma (META-INF) que deben eliminarse en el archivo UAR JAR final.

Traté de usar elsbt-assembly plugin así:

/project/assembly.sbt

addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.12.0")

/project/plugins.sbt

logLevel := Level.Warn

/build.sbt

lazy val commonSettings = Seq(
  name := "Spark-Test"
  version := "1.0"
  scalaVersion := "2.11.4"
)

lazy val app = (project in file("app")).
  settings(commonSettings: _*).
  settings(
    libraryDependencies ++= Seq(
      "org.apache.spark" %% "spark-core" % "1.2.0",
      "org.apache.spark" %% "spark-streaming" % "1.2.0",
      "org.apache.spark" % "spark-streaming-twitter_2.10" % "1.2.0"
    )
  )

Cuando hago clic en "Construir artefacto ..."en IntelliJ IDEA obtengo un archivo JAR. Pero termino con el mismo error ...

Soy nuevo en SBT y no tengo mucha experiencia con IntelliJ IDE.

Gracias.

Respuestas a la pregunta(3)

Su respuesta a la pregunta