Подавая статические файлы с кольцом/композицией - от войны
Вопрос
Использование кольца (и инструменты Lein -Ring) - я могу обслуживать статические файлы из «ресурсов» и т. Д. В соответствии с документами при запуске в разработке - однако - когда я упаковываю вещи через залово Uberwar, я понятия не имею, как сделать Он обслуживает эти файлы при запуске в контейнере. Я вижу противоречивые документы на обертке или настройке: Resource-Path, но ни один из них не работает.
Решение
В соответствии с композицией Начало работы вики, помещать route/resources
Ниже ваших путей:
(defroutes main-routes
(GET "/" [] "<h1>Hello World Wide Web!</h1>")
(route/resources "/")
(route/not-found "Page not found"))
... а затем создайте папку resources/public
В вашем проекте поместите там свои статические файлы. При ссылке на эти файлы, /resources/public
неявно, так что вы можете написать что -то вроде: (include-css "/css/site.css")
.
Другие советы
compojure.route/resources
должен делать то, что вы хотите.
Просто поместите файлы в resources/public
а затем добавьте маршрут (resources "/")
ближе к концу вашего списка маршрутов.
Вам нужно довольно недавнее леин-ринг, чтобы это работало правильно; Старые версии Lein-Ring не поддерживают каталог ресурсов для общественных активов.