如何通过sbt-assembly与scalatra创建包含webapp资源的可执行单jar

时间:2011-12-04 08:31:28

标签: scala sbt scalatra sbt-assembly

我正在通过sbt& amp;使用scalatra框架制作webapp。 xsbt-web的插件。

我想将所有资源(模板,css,js)打包到一个jar中。

在使用sbt-assembly插件的sbt中,assembly命令使单个jar包含所有项目的依赖项。

$ java -jar myproject.jar

我在浏览器中打开它

  

无法加载资源:[/ WEB-INF / views / index.scaml];你确定它在[null]之内吗?

我解压缩了jar以确认它不包含src/main/webapp/*

如何配置sbt以包含src/main/webapp/*和构建可执行jar?

1 个答案:

答案 0 :(得分:4)

资源应放在resources文件夹下。有两个这样的文件夹:

  • src/main/resources了解运行时可用的资源
  • src/test/resources仅用于测试期间可用的资源

当您运行package-wartest时,sbt会自动为您打包。该项目不需要让sbt的程序集插件包含资源。

在您的情况下,您应将WEB-INF目录放在src/main/resources/WEB-INF/