Виправлення помилки “Symbol Not Found” в Lombok для Java 21 та новіших версій…

Як Java розвивається з новими випусками, розробники, які використовують Lombok, можуть зіткнутися з проблемами сумісності при оновленні до Java 21 або новіших версій. Однією з поширених помилок є:

java: symbol not found

Ця помилка виникає через те, що версія Lombok у вашому проекті застаріла і не сумісна з змінами, введеними в новіших версіях Java. Lombok залежить від обробки анотацій, і старі версії можуть не працювати з більш суворими вимогами Java 21+.

Рішення

Найпростіший спосіб вирішити цю проблему — оновити залежність Lombok до версії, яка підтримує Java 21. Дотримуйтесь цих кроків:

  1. Оновіть Lombok у конфігурації вашого інструменту збірки:
  • Переконайтеся, що ваш файл pom.xml (для Maven) або build.gradle (для Gradle) вказує на останню версію Lombok.

1.
Увімкнення обробки анотацій:

  • У вашій IDE (наприклад, IntelliJ IDEA або Eclipse) переконайтеся, що обробка анотацій увімкнена.

Конфігурація для Maven

У вашому файлі pom.xml оновіть залежність Lombok до останньої версії:

 4.0.0  

 org.springframework.boot  
 spring-boot-starter-parent  
 3.4.1  

 com.example  
 demo  
 0.0.1-SNAPSHOT  
 demo  
 Demo project for Spring Boot  














 23  


 org.springframework.boot  
 spring-boot-starter  

!<-- Використовуйте останню версію залежності Lombok в залежності від вашої версії Java -->  
 <  
 org.projectlombok  
 lombok  
 1.18.36   
 provided !<-- Додайте цей рядок -->  


 org.springframework.boot  
 spring-boot-starter-test  
 test  






 org.apache.maven.plugins  
 maven-compiler-plugin  


 org.projectlombok  
 lombok  
 1.18.36 !<-- Додайте цей рядок -->  





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



 org.projectlombok  
 lombok  
 1.18.36 !<-- Додайте цей рядок -->  






Конфігурація для Gradle

У вашому файлі build.gradle додайте або оновіть залежність Lombok:

gradle
dependencies {  
 compileOnly 'org.projectlombok:lombok:1.18.30' // Використовуйте останню сумісну версію  
 annotationProcessor 'org.projectlombok:lombok:1.18.30'  
}

Додаткові поради

  • Після оновлення залежності виконайте mvn clean install (для Maven) або gradle clean build (для Gradle), щоб перебудувати проект.
  • Переконайтеся, що ваша IDE має плагін Lombok і він налаштований правильно:
  • IntelliJ IDEA: Перейдіть до FileSettingsBuild, Execution, DeploymentCompilerAnnotation Processors та увімкніть annotation processing.
  • Eclipse/STS: Переконайтеся, що файл lombok.jar додано до аргументу -javaagent у вашому файлі eclipse.ini.

Висновок

Оновивши залежність Lombok і правильно налаштувавши IDE, ви зможете безперешкодно вирішити помилку "symbol not found" і продовжити використовувати Lombok з Java 21 і новішими версіями. Завжди переконуйтеся, що використовуєте останню версію Lombok, щоб залишатися сумісними з сучасними функціями та удосконаленнями Java.

Перекладено з: Resolving Lombok “Symbol Not Found” Error in Java 21 and Above…

Leave a Reply

Your email address will not be published. Required fields are marked *