2015-02-25 4 views
8

По умолчанию Spring Boot просматривает мою папку src/main/webapp, чтобы найти мои html-файлы. Где я могу изменить настройки Spring Spring, если я использую другую папку для размещения html-файлов?Spring boot: настройте его, чтобы найти папку webapp

Позже файлы будут завернуты в банки для развертывания. Есть ли другие вещи, о которых мне нужно беспокоиться?

ответ

11

Смотрите документацию: http://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-developing-web-applications.html#boot-features-spring-mvc-static-content

статические ресурсы загружаются из /static, /public, /resources, /META-INF/resources

Использование src/main/webapp не рекомендуется, если вы используете банку для развертывания.

Вы можете настроить, что с помощью переопределения метода addResourceHandlers в WebMvcConfigurerAdapter

@Configuration 
    public class MvcConfig extends WebMvcConfigurerAdapter { 
     @Override 
     public void addResourceHandlers(ResourceHandlerRegistry registry){ 
      registry.addResourceHandler("/**") 
       .addResourceLocations("/") 
       .setCachePeriod(0); 
     } 
    } 
+20

Я думаю о том, «Использование' SRC/главная/webapp' не рекомендуется»может быть неправильно истолкован читателем. В соответствии с документацией «Не используйте каталог src/main/webapp *, если ваше приложение будет упаковано как банка *», так что вы должны также упомянуть об этом. –

+2

Да, эта линия полностью вводит в заблуждение. – csmckelvey

+2

@ Максим Сорокин Исправлено, спасибо. –

1

Как уже упоминалось выше, jar упаковка игнорирует webapp содержание. Если вы все еще хотите, чтобы включить содержимое внутри webapp папки, необходимо указать это явно в мавена POM.xml конфигурации, как показано ниже -

<build> 
     <resources> 
      <resource> 
       <directory>src/main/webapp</directory> 
      </resource> 
      <resource> 
       <directory>src/main/resources</directory> 
      </resource> 
     </resources> ... 
Смежные вопросы