Как создать исполняемый одиночный jar-файл, включающий ресурсы webapp, с помощью sbt-Assembly со Scalatra
Я делаю веб-приложение с использованием фреймворка скалатра через плагин sbt & xsbt-web-plugin.
Я хочу упаковать все ресурсы (шаблоны, CSS, JS) в одну банку.
В sbt с плагином sbt-assembly, assembly
Команда создает один jar, который включает в себя все зависимости проекта.
$ java -jar myproject.jar
и я открываю это в браузере
Не удалось загрузить ресурс: [/WEB-INF/views/index.scaml]; Вы уверены, что это в [ноль]?
Я распаковал банку, чтобы подтвердить, что она не включает src/main/webapp/*
,
Как я могу настроить SBT для включения src/main/webapp/*
а сборку исполняемого фляги?
1 ответ
Ресурсы предназначены для размещения под resources
папки. Есть две такие папки:
src/main/resources
для ресурсов, доступных во время выполненияsrc/test/resources
для ресурсов, доступных только во время тестирования
sbt автоматически запакует их для вас при запуске package-war
или же test
, Проект не должен иметь плагин сборки для sbt для включения ресурсов.
В вашем случае вы должны поставить WEB-INF
каталог в src/main/resources/WEB-INF/
,