3
respostas

Dando erro cannot find symbol

Esta dando esse erro, fui ver e o plugin do lombok não aparece, porem ele esta instalado. Já tentei os métodos pra resolver que estaõ nas outras dúvidas, porém, não adiantou

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

3 respostas

Olá Kayque! Tudo bem?

Parece que você está enfrentando um problema com o Lombok. Aqui estão algumas sugestões que podem ajudar a resolver o erro:

  1. Verifique a Dependência no pom.xml: Certifique-se de que a dependência do Lombok está corretamente configurada no seu pom.xml. Deve estar algo assim:

    <dependency>
        <groupId>org.projectlombok</groupId>
        <artifactId>lombok</artifactId>
        <version>1.18.34</version>
        <scope>provided</scope>
    </dependency>
    
  2. Habilite o Annotation Processing: No IntelliJ, vá em File > Settings > Build, Execution, Deployment > Compiler > Annotation Processors e marque a opção "Enable annotation processing".

Se após essas etapas o problema persistir, pode ser útil verificar a mensagem de erro que apareceu para você.

Espero ter ajudado e bons estudos!

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

Aparece essas mensagens de erro

C:\Users\Kayque\Downloads\Curso Programação\pagamentos\pagamentos\src\main\java\br\com\alurafood\pagamentos\controller\PagamentoController.java:38:84 java: cannot find symbol symbol: method getId() location: variable pagamento of type br.com.alurafood.pagamentos.dto.PagamentoDto

C:\Users\Kayque\Downloads\Curso Programação\pagamentos\pagamentos\src\main\java\br\com\alurafood\pagamentos\service\PagamentoService.java:40:18 java: cannot find symbol symbol: method setStatus(br.com.alurafood.pagamentos.model.Status) location: variable pagamento of type br.com.alurafood.pagamentos.model.Pagamento

C:\Users\Kayque\Downloads\Curso Programação\pagamentos\pagamentos\src\main\java\br\com\alurafood\pagamentos\service\PagamentoService.java:48:18 java: cannot find symbol symbol: method setId(java.lang.Long) location: variable pagamento of type br.com.alurafood.pagamentos.model.Pagamento

Oi, Kayque! Peço perdão pela demora em responder.

Parece que o problema está relacionado ao uso incorreto de métodos em suas classes. O erro cannot find symbol ocorre quando o código tenta acessar um método que não está presente ou não é visível na classe, ou objeto.

Verifique se os métodos getId(), setStatus() e setId() estão corretamente definidos nas classes correspondentes. Aqui está o que você pode fazer:

  1. Verifique as classes e os métodos:

    • Em PagamentoDto, o método getId() precisa estar presente.
    • Em Pagamento, os métodos setStatus() e setId() devem existir.
  2. Verifique o Lombok: Se você está utilizando o Lombok para gerar os métodos, certifique-se de que ele está configurado corretamente. Como mencionado, se o plugin do Lombok não estiver aparecendo, tente instalar ou atualizar o plugin diretamente na IDE. Se necessário, reconfigure o Annotation Processing como mostrado anteriormente.

  3. Verifique os imports: Às vezes, o erro pode ocorrer por falta de importação correta. Certifique-se de que os arquivos que usam os métodos têm as importações certas.

Por exemplo, em PagamentoDto, se você está usando Lombok para gerar getters e setters, a classe pode ser assim:

import lombok.Getter;
import lombok.Setter;

@Getter
@Setter
public class PagamentoDto {
    private Long id;
    private Status status;
}

Fico à disposição.