【问题标题】:Excluding a dependency in creating fat jar using SBT排除使用 SBT 创建 fat jar 的依赖项
【发布时间】:2017-07-19 11:15:39
【问题描述】:

我正在编写一个 akka 应用程序。在创建应用程序的远 jar 时,我不希望 scala 库与 jar 一起打包。我的 build.sbt 如下所示:

lazy val root = (project in file(".")).
  settings(
    name :="akka-app",
    version :="1.0",
    scalaVersion :="2.10.4",
    mainClass in Compile := Some("sample.hello.HelloWorld")            
  )

libraryDependencies ++= Seq(
  "com.typesafe.akka" %% "akka-actor" % "2.3.4" % "provided",
  "com.typesafe" % "config" % "1.2.1"

)

// META-INF discarding
mergeStrategy in assembly <<= (mergeStrategy in assembly) { (old) =>
   {   
    case PathList("META-INF", xs @ _*) => MergeStrategy.discard
    case x => MergeStrategy.first
   }   
}

但是这个 sbt 用 jar 包了 scala。我只希望 com.typesafe.config 库出现在 jar 中。任何解决方案如何实现这一目标?

【问题讨论】:

    标签: sbt akka sbt-assembly


    【解决方案1】:

    您可以通过修改 assemblyOption 设置中的选项来排除 Scala:

    assemblyOption in assembly := 
      (assemblyOption in assembly).value.copy(includeScala = false)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-02-08
      • 2018-11-28
      • 1970-01-01
      • 2015-11-03
      • 1970-01-01
      • 2019-09-12
      • 1970-01-01
      • 2019-08-23
      相关资源
      最近更新 更多