Невозможно импортировать статические ресурсы в Spring 5.0.6 через addResourceHandler и тимелеаф

У меня следующая структура папок: 'resources' > 'static' > 'styles';
Внутри папки стилей находится файл style.css.

Есть еще такой класс:

@Configuration
@EnableWebMvc
public class ResourcesConfiguration implements WebMvcConfigurer {
    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry
                .addResourceHandler("/styles/**")
                .addResourceLocations("/styles/", "classpath:/static/");
    }
}  

А в index.html в разделе head есть:

  <link th:href = "@{/styles/style.css}" rel = "stylesheet" type = "text/css"  />  

У меня нет другой конфигурации (как в application.properties) относительно статических ресурсов.

Когда я захожу на index.html в браузере, я получаю:
URL-адрес запроса: http: // локальный: 9000 / стили / style.css
Метод запроса: GET
Код состояния: 404

1
0
88
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

addResourceLocations(String...locations) принимает в разных местах список аргументов-переменных. Но он работает как префикс или суффикс для соседних записей.

Поэтому вам следует немного изменить свою конфигурацию, как показано ниже, чтобы она заработала.

    registry
        .addResourceHandler("/styles/**") 
        .addResourceLocations("classpath:/static/styles/"); 

Другие вопросы по теме