1
resposta

[Bug] Erro com a versão do Springboot x Springcloud

No meu microserviço de pedido, após a configuração do Eureka Client, na hora de rodar a aplicação está aparecendo esse erro:

Description:

Your project setup is incompatible with our requirements due to following reasons:

  • Spring Boot [3.5.0] is not compatible with this Spring Cloud release train

Analisei a microsserviço de pagamento, junto ao de pedido e, aparentmente, está tudo igual, mas o de pedido vem apresentando esse erro ao rodar.

A versão do Springcloud:

<properties>
        <java.version>21</java.version>
        <spring-cloud.version>2024.0.0</spring-cloud.version>
</properties>

PS: Fiz uma pesquisa das dependências no Spring Initializr e busquei pela Eureka Discovery Client, explorando a dependência, notei que a versão do Spring Cloud está como 2025.

<properties>
    <java.version>17</java.version>
    <spring-cloud.version>2025.0.0</spring-cloud.version>
  </properties>
  <dependencies>
    <dependency>
      <groupId>org.springframework.cloud</groupId>
      <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
    </dependency>

Fiz essa alteração, mas mantendo o Java 21 e, aparentemente, funcionou, o serviço de Pedido foi registrado no Eureka.

O curioso é que o serviço de Pagamento continua com a versão do Spring Cloud 2024 e funcionando.

1 resposta

Oi Camilo! Como vai?

Esse tipo de problema é comum, pois as versões do Spring Cloud são projetadas para serem compatíveis com versões específicas do Spring Boot.

Pelo contexto que você compartilhou, o erro ocorre porque a versão do Spring Boot que você está usando (3.5.0) não é compatível com a versão do Spring Cloud que está tentando utilizar (2024.0.0). Quando você alterou para a versão 2025.0.0 do Spring Cloud, o problema foi resolvido, o que indica que essa versão é compatível com o Spring Boot 3.5.0.

Para resolver esse tipo de problema, uma boa prática é sempre verificar a tabela de compatibilidade entre as versões do Spring Boot e Spring Cloud. Essa tabela geralmente está disponível na documentação oficial do Spring Cloud. Por exemplo, se você acessar a documentação do Spring Cloud, encontrará uma seção que indica quais versões do Spring Cloud são compatíveis com quais versões do Spring Boot.

No seu caso, como o serviço de pagamento está funcionando com a versão 2024.0.0 do Spring Cloud, isso sugere que ele pode estar usando uma versão diferente do Spring Boot compatível com essa versão do Spring Cloud. Você pode verificar isso no arquivo pom.xml do serviço de pagamento para entender melhor essa configuração.

Espero ter ajudado e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.