0

我想 sbt 生成两个包:

  1. WAR 文件,用于 Web 应用程序
  2. 包含命令行和批处理代码的 JAR 文件

这两个包共享许多相似的代码(业务逻辑)和依赖项,但当然 Servlet 方面仅在 WAR 中,命令行和批处理仅在 JAR 中。

我希望 JAR 自行运行,不需要外部依赖项(ala sbt-assembly)。

我怎样才能做到这一点?

4

1 回答 1

0

WAR文件

您可以使用earldouglas/xsbt-web-plugin制作一个war 文件,并将sbt-assembly 用于胖JAR。您可能需要有点创意才能将一些文件包含在一个文件中,但从另一个文件中排除。

从相同的代码库生成 JAR 和 WAR

如果生成的包最后包含不同的库依赖项,例如包括独立 JAR 的 Jetty 或 Netty,我认为它需要是一个单独的子项目。请参阅多项目构建

于 2014-05-17T19:35:18.807 回答