Как распределить ресурсы между проектами в SBT
Проект яя работаю на работе это веб-приложение наЛифт Фреймворк. Мы'повторное использованиевеб-плагин xsbt также. Там'с "ядро» проект, который содержит подавляющее большинство функциональных возможностей; моя текущая цель - создать двоихраспределение» проекты, которые добавляют другой набор ресурсов classpath к "ядро» проект. Проблема в том, что я либо 1) могуне получить "распределение» проекты для запуска, или 2) заставить их работать, но требуемый ресурс неКажется, там нет.
Что я'мы пытались
Вот'Сокращенная версия моего:project/Build.scala
lazy val core = Project("Core", file("core"))
.settings( /*some dependencies, resolvers, webSettings */ )
lazy val app1 = Project("App1", file("app1"))
.aggregate(core)
.settings( /*the same settings as core */ )
lazy val app2 = Project("App2", file("app2"))
.aggregate(core)
.settings( /*the same settings as core*/ )
Тогда в структуре каталогов для обоихapp1
а такжеapp2
У меня есть файл наsrc/main/resources/aFileINeed
, Основное приложение используетclass.getResource
подход для загрузки файла из classpath.
Проблемы
Если я попытаюсь запустить один из проектов распространения, используяcontainer:start
, он не обнаруживает требуемый файл в пути к классам. Кроме того, он утверждает, чтоsrc/main/webapp
это не существующий каталог (эта папка включена в основной проект, как того требует веб-плагин xsbt).
Как я могу получить эти проекты "сливаться» их ресурсы? Я ожидал, что с помощьюaggregate
или жеdependsOn
вBuild.scala
определение проекта будет обрабатывать это для меня, но это, очевидно, нет.