sbt程序集在提供的依赖项之间切换

时间:2016-11-24 08:55:51

标签: java apache-spark sbt sbt-assembly

我正在开发一个spark应用程序。要在本地测试它,我想运行sbt运行。这要求依赖项在本地可用。但是我也想使用sbt assembly来生成一个可以用于spark-submit的jar,该jar应该只包含一些依赖项,例如不包括火花依赖。

当我将build.sbt中的依赖关系标记为% "provided"时,sbt run

不再提供该关联

1 个答案:

答案 0 :(得分:2)

如果在main built.sbt

中使用程序集中排除jar的情况
excludedJars in assembly := {
  val cp = (fullClasspath in assembly).value
  cp filter {f =>
     f.data.getName.contains("spark"),
     f.data.getName.startsWith("jar_name")
  }
}