Исключение при установке статического местоположения в банке

spark-java

733 просмотра

2 ответа

У меня есть простое приложение spark-java, в котором я устанавливаю расположение своих статических ресурсов следующим образом:

Spark.staticFiles.location("/static");

Он прекрасно работает, когда я запускаю его в своей IDE, когда я пытаюсь запустить его из банки, я получаю

spark.staticfiles.StaticFilesConfiguration - Error when creating StaticResourceHandler
java.io.FileNotFoundException: class path resource [static] cannot be resolved to URL because it does not exist
at spark.resource.ClassPathResource.getURL(ClassPathResource.java:166)

Я нашел эту тему, которая обсуждает аналогичную проблему. Он утверждает, что исправлен в 2.5, но я использую 2.5 и все еще испытываю эту проблему.

Кто-нибудь нашел способ обойти эту проблему, кроме как не использовать искру для статики и обслуживать их извне из CDN?

Автор: ptulula Источник Размещён: 08.11.2019 11:28

Ответы (2)


0 плюса

ваш /staticкаталог должен находиться в корне вашего classpath, что соответствует структуре вашего проекта. Если вы используете структуру maven, вы можете создать в ней статический /resourcesкаталог. Другой подход заключается в создании вашего /staticкаталога в виде java-пакета, который гарантирует, что он находится внутри вашего classpath.

Автор: Laercio Metzner Размещён: 20.08.2016 06:22

0 плюса

У меня была такая же проблема. Когда попробуете убежать из банки. Вы должны использовать внешнее местоположение при сборке в банке.

staticFiles.externalLocation (System.getProperty ( "app.dir") + "\ общественности");

Например, каталог вашего приложения - C: \ server . Сборка приложения в C: \ server \ app.jar и ваш html, js-файл, расположенный в C: \ server \ public

Вы должны запустить приложение из cmd: java -Dapp.dir = "C: \ server" -jar app.jar

Автор: Andrew Размещён: 21.09.2016 11:46
Вопросы из категории :
32x32