I'm making webapp using scalatra framework via sbt & xsbt-web-plugin.
I want to package all resources(templates, css, js) into a single jar.
In sbt with sbt-assembly plugin, assembly
command makes single jar which includes all of project's dependencies.
$ java -jar myproject.jar
and I open it in browser
Could not load resource: [/WEB-INF/views/index.scaml]; are you sure it's within [null]?
I unzipped jar to confirm that it does not include src/main/webapp/*
.
How can I config sbt for including src/main/webapp/*
and building executable jar?
Resources are meant to be put under the
resources
folders. There are two such folders:src/main/resources
for resources available at runtimesrc/test/resources
for resources available only during testingsbt will package those automatically for you when you run
package-war
ortest
. The project does not need to have the assembly plugin for sbt to include resources.In your case, you should put the
WEB-INF
directory insrc/main/resources/WEB-INF/
.