Dei uma olhada em outros tópicos, mas ainda não consegui utilizar o Lombok. Rodei sem o construtor padrão e não persistia nem Médico e nem Paciente. Coloquei a tag @AllArgsConstructor antes das demais como sugerida pela Beatriz Diegues Duarte e mudou o erro, passou a reclamar do construtor do Endereço, com o erro:
"Unable to locate constructor for embeddable 'med.voll.api.endereco.Endereco"
Dei uma pesquisada e vi uma sugestão no stack overflow e chatGPT de colocar a descrição "(force = true)" na frente da anotação @NoArgsConstructor Ainda assim não funcionou, mas pelo pelo pude criar o construtor padrão sem que a IDE indicasse erro. O que entendo que não deveria ser necessário pelo uso do Lombok. Foi necessário criar apenas para Endereço, pois medico e paciente gerava sem o construtor padrão. Imaginei que era por ser embeddable.
Segui. Mais pra frente, ao buscar todos os médicos ou pacientes não gerou os getters, tive que fazer na mão pra finalizar o curso, e depois, mesmo com os getters gerados. Dava esse erro:
2024-12-05T16:36:22.585-03:00 ERROR 34429 --- [api] [nio-8080-exec-2] o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed: org.springframework.orm.jpa.JpaSystemException: No default constructor for entity 'med.voll.api.paciente.Paciente'] with root cause
org.hibernate.InstantiationException: No default constructor for entity 'med.voll.api.paciente.Paciente'
at org.hibernate.metamodel.internal.EntityInstantiatorPojoStandard.instantiate(EntityInstantiatorPojoStandard.java:93) ~[hibernate-core-6.6.2.Final.jar:6.6.2.Final]
Tive que fazer os construtores na mão de médico e paciente, porém a IDE mostrava erro e tive que adicionar a descrição "(force = true)" na frente da anotação "@NoArgsConstructor"
Sabendo que deve ser algum erro do Lombok fui ver o arquivo pom.
Tinha esse trecho na parte do build:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<annotationProcessorPaths>
<path>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</path>
</annotationProcessorPaths>
</configuration>
</plugin>
<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>
Comentei a seguinte parte de exclusão:
<!--<configuration>
<excludes>
<exclude>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</exclude>
</excludes>
</configuration>-->
Dentro das minhas dependências esta assim:
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<scope>provided</scope>
</dependency>
Já dei build > rebuild project
E ja dei File > Invalidade caches > Invalidade and restart