Boa noite, pessoal!
Tudo bem?
Não estou conseguindo executar a aplicação:
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Boa noite, pessoal!
Tudo bem?
Não estou conseguindo executar a aplicação:
Segue o pom.xml:
4.0.0 org.springframework.boot spring-boot-starter-parent 2.6.7 br.com.alurafood pagamentos 0.0.1-SNAPSHOT pagamentos MS de pagamentos da AluraFood <java.version>17</java.version> org.springframework.boot spring-boot-starter-data-jpa org.springframework.boot spring-boot-starter-validation org.springframework.boot spring-boot-starter-web org.flywaydb flyway-core
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<scope>runtime</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.modelmapper</groupId>
<artifactId>modelmapper</artifactId>
<version>2.3.8</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.30</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-netflix-eureka-client</artifactId>
<version>3.1.2</version>
</dependency>
<dependency>
<groupId>com.netflix.eureka</groupId>
<artifactId>eureka-client</artifactId>
<version>2.0.1</version>
</dependency>
</dependencies>
Olá, Marcos.
Tudo bem?
Pelo que pude observar nas imagens que você compartilhou, parece que há um problema com a inicialização da aplicação relacionado ao Spring Cloud Netflix Eureka. A mensagem de erro java.lang.IllegalStateException: Error processing condition on org.springframework.cloud.netflix.eureka.config.DiscoveryClientOptionalArgsConfiguration sugere que há uma incompatibilidade ou problema com a configuração do Eureka.
Vamos tentar algumas coisas para resolver isso:
Verifique as Dependências: Certifique-se de que você adicionou a dependência do Eureka Client corretamente no seu arquivo pom.xml ou build.gradle, conforme foi demonstrado na aula. A dependência deve ser semelhante a esta:
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
<version>3.1.2</version>
</dependency>
Compatibilidade de Versões: Verifique se a versão do Spring Boot que você está utilizando é compatível com a versão do Spring Cloud. Às vezes, versões incompatíveis podem causar esse tipo de erro.
Limpe e Reconstrua o Projeto: Tente limpar o cache do Maven (ou Gradle) e reconstruir o projeto. No IntelliJ, você pode fazer isso através das opções "Clean" e "Rebuild" no menu "Build".
Atualize o Projeto: Se estiver usando Maven, tente atualizar o projeto com o comando mvn clean install no terminal ou usando a opção de atualização de projeto do IntelliJ.
Verifique as Configurações do Eureka: Confirme se as configurações do Eureka no arquivo application.properties estão corretas e se o servidor Eureka está rodando na porta especificada.
Logs de Erro: Analise os logs de erro com mais detalhes para verificar se há alguma pista adicional sobre o que pode estar causando o problema.
Caso essas etapas não resolvam o problema, seria útil ver o código completo da classe PagamentosApplication e verificar se há alguma configuração adicional ou anotação que possa estar causando o conflito.
Espero que essas sugestões ajudem a resolver o problema e que você consiga executar a aplicação com sucesso. Bons estudos!
Boa tarde, Renan.
Eu fiz as alterações no pom:
4.0.0 org.springframework.boot spring-boot-starter-parent 3.1.6 br.com.alurafood pagamentos 0.0.1-SNAPSHOT pagamentos MS de pagamentos da AluraFood <java.version>17</java.version> org.springframework.boot spring-boot-starter-data-jpa org.springframework.boot spring-boot-starter-validation org.springframework.boot spring-boot-starter-web org.flywaydb flyway-core
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<scope>runtime</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>com.mysql</groupId>
<artifactId>mysql-connector-j</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.modelmapper</groupId>
<artifactId>modelmapper</artifactId>
<version>2.3.8</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.30</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-netflix-eureka-client</artifactId>
<version>3.1.2</version>
</dependency>
<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
<version>1.1.0.Final</version>
</dependency>
<dependency>
<groupId>javax.persistence</groupId>
<artifactId>javax.persistence-api</artifactId>
<version>2.2</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-validation</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-properties-migrator</artifactId>
<scope>runtime</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<excludes>
<exclude>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</exclude>
</excludes>
</configuration>
</plugin>
</plugins>
</build>
Agora não está reconhecendo o NotBlank e Positive do classe Pagamento:
Segue o código da classe Pagamento:
package br.com.alurafood.pagamentos.model;
import lombok.AllArgsConstructor; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter;
import javax.persistence.*;
import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; import javax.validation.constraints.Positive; import javax.validation.constraints.Size; import java.math.BigDecimal;
@Entity @Table(name="pagamentos") @Getter @Setter @AllArgsConstructor @NoArgsConstructor public class Pagamento { //Atributos da tabela do banco de dados @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id;
@NotNull
@Positive
private BigDecimal valor;
@NotBlank
@Size(max = 100)
private String nome;
@NotBlank
@Size(max = 19)
private String numero;
@NotBlank
@Size(max = 7)
private String expiracao;
@NotBlank
@Size(min=3, max=3)
private String codigo;
@NotNull
@Enumerated(EnumType.STRING)
private Status status;
@NotNull
private Long pedidoId;
@NotNull
private Long formaDePagamentoId;
}