Pregunta

Uso de Ring (y las herramientas de anillo de lein), puedo servir archivos estáticos de "recursos", etc. según los documentos cuando se ejecuta en desarrollo, sin embargo, cuando empaqué las cosas a través de Lien Uberwar, no tengo idea de cómo hacer Sirve esos archivos cuando se ejecuta en un contenedor. Veo documentos contradictorios en el recurso de envoltura, o la configuración: el camino de los recursos pero ninguno parece funcionar.

¿Fue útil?

Solución

Según la composión Comenzando wiki, poner route/resources Debajo de tus caminos:

(defroutes main-routes
  (GET "/" [] "<h1>Hello World Wide Web!</h1>")
  (route/resources "/")
  (route/not-found "Page not found"))

... y luego, crea una carpeta resources/public En su proyecto, coloque sus archivos estáticos allí. Al referirse a estos archivos, el /resources/public está implícito, por lo que puedes escribir algo como: (include-css "/css/site.css").

Aquí está Un ejemplo que implementa en CloudBees.

Otros consejos

compojure.route/resources Debe hacer lo que quieras.

Simplemente coloque los archivos en resources/public y luego agregue una ruta (resources "/") Cerca del final de su lista de rutas.

Necesita un anillo de lein bastante reciente para que esto funcione correctamente; Las versiones más antiguas de Lein-Ring no admiten el directorio de recursos para activos públicos.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top