Como excluir um @Repository da verificação de componentes ao usar o Spring Data Rest

em um projeto de inicialização por primavera, tenho problemas para excluir alguns repositórios da verificação de componentes.

Eu tenho uma biblioteca que contém algumas entidades e alguns repositórios (JpaRepositories). Por alguma razão, implementei um pequeno aplicativo Spring Boot Data Rest que deve ser usado para fornecer aos testadores um acesso rápido às entidades. Portanto, implementei um repositório que estende o PagingAndSortingRepository e é anotado com @RepositoryRestResource.

Quando o aplicativo inicia, todo o repositório será verificado e disponibilizado. Desde que eu queira apenas ter os repositórios de Restos de Dados disponíveis, anotei o scanner do componente para excluir os repositórios indesejados. Mas isso não funciona. Eu verifiquei com o ponto final do atuador e o que eu faço - nenhum repositório é excluído.

Para demonstrar o problema, criei um aplicativo de demonstração simples:https://github.com/magomi/springboot-restdata-repoloading.

Para excluir o DataRepository, tentei as duas abordagens:

// exclude V02
@SpringBootApplication
@ComponentScan(excludeFilters = {
        @ComponentScan.Filter(type = FilterType.ASSIGNABLE_TYPE, classes = {
                DataRepository.class})
})

e

// exclude V01
@SpringBootApplication(exclude = { DataRepository.class })

Sem sucesso. Quando chamo o terminal / beans (fornecido pelo atuador de inicialização por mola), sempre vejo

{
    bean: "dataRepository",
    aliases: [ ],
    scope: "singleton",
    type: "org.codefromhell.test.repoloading.DataRepository",
    ...
},
{
    bean: "dataApiRepository",
    aliases: [ ],
    scope: "singleton",
    type: "org.codefromhell.test.repoloading.api.DataApiRepository",
    ...
},

questionAnswers(2)

yourAnswerToTheQuestion