发布没有ivy xml文件的sbt程序集

时间:2016-02-26 14:39:23

标签: sbt

我正在使用ScalaFX中的GUI应用程序供私人使用,并希望sbt publish使用sbt-assembly创建一个 fat jar ,并将单独放入一个本地文件夹,与我的朋友分享。

我不希望自动附带的额外文件(pom,md5,sha1,source,javadoc,轻量级jar和ivy配置)或嵌套目录。使用此配置,我可以禁用除 ivy-XX.xml 文件之外的所有内容。

name := "my-app"
version := "2.1"

// ...deps and scalac config...

artifact in (Compile, assembly) := {
  val art = (artifact in (Compile, assembly)).value
  art.copy(`classifier` = Some("assembly"))
}

addArtifact(artifact in (Compile, assembly), assembly)
checksums in publish := Seq()
publishArtifact in packageBin := false
publishArtifact in packageDoc := false
publishArtifact in packageSrc := false
publishMavenStyle := false

publishTo := Some(Resolver.file("file", file("D:/Dropbox/my-app"))(Patterns("[artifact]-[revision](-[classifier]).[ext]")) )

如何禁用ivy xml?

1 个答案:

答案 0 :(得分:2)

我想如果我使用maven风格的发布:

publishMavenStyle := true // which is default anyway

然后可以简单地丢弃POM文件:

publishArtifact in makePom := false