SBT,将整个外部目录(带有dir本身)包含在jar内置的

时间:2018-07-31 13:44:25

标签: scala build sbt

我需要从外部位置将整个static目录包括在我的SBT生成的JAR文件中(带有可选的文件夹重命名)。

将其路径添加到unmanagedResourceDirectories仅添加其内容,而不是在JAR根目录中生成static内容的整个目录。我在玩各种各样的映射,但是没有运气。

有人使用过类似的用例,是否可以为我指出正确的使用方法?

我无法修改生成static目录的过程,并且不能使用它的父目录,因为它包含我不想要的其他文件/目录。

1 个答案:

答案 0 :(得分:1)

好吧,我整理了一下,找到了sbt的gitter频道上的一些提示。因此,mappings是我所需要的:

mappings in (Compile, packageBin) := {
  val statics = contentOf(baseDirectory.value / "static").map {
    case (file, dest) => file -> s"webapp/$dest"
  }
  (mappings in (Compile, packageBin)).value ++ statics
}

这将从目录static中获取所有内容,并将其放在生成的JAR文件的webapp目录中