Como criar um Uber JAR (Fat JAR) usando o SBT no IntelliJ IDEA?

Estou usando o SBT (no IntelliJ IDEA) para criar um projeto Scala simples.

Eu gostaria de saber qual é omaneira mais simples para construir umUber JAR arquivo (também conhecido como Fat JAR, Super JAR).

Atualmente, estou usando o SBT, mas quando estou enviando meu arquivo JAR paraApache Spark Estou tendo o erro a seguir:

Exceção no encadeamento "main" java.lang.SecurityException: resumo do arquivo de assinatura inválido para os principais atributos do Manifest

Ou este erro durante o tempo de compilação:

java.lang.RuntimeException: deduplicado: conteúdo de arquivo diferente encontrado no seguinte:
PATH \ DEPENDENCY.jar: META-INF / DEPENDENCIES
PATH \ DEPENDENCY.jar: META-INF / MANIFEST.MF

istoparece é porque algumas de minhas dependências incluem arquivos de assinatura (META-INF), que precisam ser removidos no arquivo Uber JAR final.

Eu tentei usar omontagem-sbt plugin assim:

/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"
    )
  )

Quando clico em "Criar artefato ..."no IntelliJ IDEA, recebo um arquivo JAR. Mas acabo com o mesmo erro ...

Eu sou novo no SBT e não tenho muita experiência com o IntelliJ IDE.

Obrigado.

questionAnswers(3)

yourAnswerToTheQuestion