最佳答案
我使用 SBT (在 IntelliJIDEA 中)来构建一个简单的 Scala 项目。
我想知道构建 优步罐文件(又名 Fat JAR,Super JAR)的 最简单的方法是什么。
我目前正在使用 SBT,但是当我将 JAR 文件提交到 阿帕奇火种源时,会得到以下错误:
线程“ main”java.lang.SecurityException: 无效 Manifest 主要属性的签名文件摘要
或编译期间的此错误:
异常: 重复: 找到不同的文件内容 下列各项:
路径依赖项 jar: meta-INF/DEPENDENCIES
路径依赖: META-INF/MANIFEST.MF
这是因为我的一些依赖包括签名文件(META-INF) ,需要在最终的 Uber JAR 文件中删除。
我试着这样使用 装配插件:
/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"
)
)
当我在 IntelliJ IDEA 中单击“ 制造神器。”时,我得到一个 JAR 文件。
我是 SBT 的新手,对 IntelliJ IDE 没有什么实验经验。
谢谢。