Gerenciamento de Dependência de Inicialização Spring com um Pai Personalizado

Gerenciamento de Dependência de Inicialização Spring com um Pai Personalizado

1. Visão geral

Spring Boot fornece o POM pai para uma criação mais fácil de aplicativos Spring Boot.

No entanto,using the parent POM may not always be desirable, if we already have a parent to inherit from.

Neste tutorial rápido, vamos dar uma olhada em como ainda podemos usar o Boot sem o iniciador pai.

2. Spring Boot sem POM pai

The parent pom.xml takes care of dependency and plugin management. Por esse motivo, herdar dele fornece suporte valioso em um aplicativo, portanto, geralmente é o curso de ação preferido ao criar um aplicativoBoot. Você pode encontrar mais detalhes sobre como construir um aplicativo com base no iniciador pai emour previous article.

Na prática, porém,we may be constrained by design rules or other preferences to use a different parent.

Felizmente,Spring Boot oferece uma alternativa para herdar do iniciador pai, que ainda pode nos oferecer algumas de suas vantagens.

If we don’t make use of the parent POM, we can still benefit from dependency management adicionando o artefatospring-boot-dependencies comscope=import:


     
        
            org.springframework.boot
            spring-boot-dependencies
            1.5.6.RELEASE
            pom
            import
        
    

Em seguida, podemos começar simplesmente a adicionar dependências do Spring e fazer uso dos recursosSpring Boot:


    org.springframework.boot
    spring-boot-starter-web

On the other hand, without the parent POM, we no longer benefit from plugin management. Isso significa que precisamos adicionar ospring-boot-maven-plugin explicitamente:


    
        
            org.springframework.boot
            spring-boot-maven-plugin
        
    

3. Substituindo Versões de Dependência

Se quisermos usar uma versão diferente para uma determinada dependência do que aquela gerenciada pelo Boot, precisamos declará-la na seçãodependencyManagement, antes quespring-boot-dependencies seja declarado:


    
        
            org.springframework.boot
            spring-boot-starter-data-jpa
            1.5.5.RELEASE
        
    
    // ...

Em contraste, apenas declarar a versão para a dependência fora da tagdependencyManagement não funcionará mais.

4. Conclusão

Neste tutorial rápido, vimos como podemos usarSpring Boot sem o paipom.xml.

O código-fonte dos exemplos pode ser encontradoover on GitHub.