为了账号安全,请及时绑定邮箱和手机立即绑定

如何在IntelliJ IDEA中使用SBT构建Uber JAR(Fat JAR)?

如何在IntelliJ IDEA中使用SBT构建Uber JAR(Fat JAR)?

饮歌长啸 2019-09-20 14:34:36
我正在使用SBT(在IntelliJ IDEA中)构建一个简单的Scala项目。我想知道构建Uber JAR文件(又名Fat JAR,Super JAR)的最简单方法是什么。我目前正在使用SBT但是当我将我的JAR文件提交给Apache Spark时,我收到以下错误:线程“main”中的异常java.lang.SecurityException:Manifest主要属性的签名文件摘要无效或者在编译期间出现此错误:java.lang.RuntimeException:deduplicate:在以下位置找到不同的文件内容:PATH \ DEPENDENCY.jar:META-INF / DEPENDENCIES PATH \ DEPENDENCY.jar:META-INF / MANIFEST.MF它看起来像那是因为我的一些依赖包括签名文件(META-INF),这需要在尤伯杯决赛JAR文件被删除。我尝试使用这样的sbt-assembly插件:/project/assembly.sbtaddSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.12.0")/project/plugins.sbtlogLevel := Level.Warn/build.sbtlazy 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"    )  )当我在IntelliJ IDEA中单击“ Build Artifact ... ”时,我得到一个JAR文件。但我最终得到了同样的错误......我是SBT的新手,并没有经过IntelliJ IDE的实验。谢谢。
查看完整描述

3 回答

  • 3 回答
  • 0 关注
  • 739 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信