[Finalizado] Porque minha implementação de WebMvcConfigurer não funciona?

Estou tentando fazer um app spring com zero de configuração xml, ou arquivos properties, apenas java.

De acordo com o que li sobre spring 5, existe essa tal interface WebMvcConfigurer que simplifica a criação e configuração de beans como o view resolver, basta implementar a interface em uma classe anotada com Configuration e EnableWebMvc. Bom, eu fiz, mas parece que os métodos da classe nunca são chamados.

Esta é a classe:

@Configuration
@ComponentScan({"br.gabrieelmoura.controller"})
@EnableWebMvc
public class WebConfig implements WebMvcConfigurer {

    @Override
    public void configureViewResolvers(ViewResolverRegistry registry) {
        registry.jsp("/WEB-INF/views/", ".jsp");
    }

}

Este é um controller:
@Controller
public class HomeController {

    @GetMapping("/")
    public String index() {
        return "index";
    }

    @GetMapping("/teste")
    public String teste() {
        return "WEB-INF/views/index.jsp";
    }

}

O /teste funciona perfeitamente, ao acessa-lo a view é renderizada.
O / não funciona e aparece isso no log:
[http-nio-9000-exec-2] WARN org.springframework.web.servlet.PageNotFound - No mapping found for HTTP request with URI [/index] in DispatcherServlet

Acredito que um funciona e outro não porque a configuração que fiz ali no WebConfig não é chamada.

Vocês tem acesso ao código completo aqui:

Sinto desapontá-lo, mas não é isso.
Ocorre que, você precisa especificar onde estão as tuas páginas, como você fez no /teste.
Como não tem nada no /, ele dá erro.

Mas a ideia daquele configureViewResolvers não é justamente ele colocar o prefixo e o sufixo no nome da view que eu coloquei manualmente no /test? não está funcionando, o spring procura a view com o nome do jeito que foi retornado no método

Descobri o problema e estou postando a solução aqui para a posteridade.

O que aconteceu é que uma exceção estava sendo disparada por causa do JPAConfig e por isso toda a configuração das classes que coloquei aqui não estava sendo feita:

protected Class<?>[] getServletConfigClasses() {
    return new Class[] {WebConfig.class, JPAConfig.class};
}