将sbt工件发布到文件系统

时间:2013-02-13 17:04:31

标签: sbt

我有一个位于file:///some/path/here的内部maven存储库。我想将我的sbt工件发布到这个位置。我发现以下内容应该有效。

publishMavenStyle := true

publishTo <<= version { (v: String) =>
  val path = "file:///some/path/here/"
  if (v.trim.endsWith("SNAPSHOT"))
    Some("snapshots" at nexus + "maven-snapshots")
  else
    Some("releases"  at nexus + "maven")
}

但是,这会失败并出现以下异常。

[info]  delivering ivy file to .../target/scala-2.9.2/ivy-1.0-SNAPSHOT.xml
java.lang.UnsupportedOperationException: URL repository only support HTTP PUT at the moment
    at org.apache.ivy.util.url.BasicURLHandler.upload(BasicURLHandler.java:202)
    at org.apache.ivy.util.FileUtil.copy(FileUtil.java:150)
    at org.apache.ivy.plugins.repository.url.URLRepository.put(URLRepository.java:84)

如何使用sbt将工件发布到由文件路径指定的存储库?

1 个答案:

答案 0 :(得分:3)

使用此格式发布到本地文件路径:

publishTo := Some(Resolver.file("file", new File("/some/path/here")))