I want to use Lombok in a project to use @Getter and @Setter.
I included using Maven:
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.12.6</version>
<scope>provided</scope>
</dependency>
Import is OK for Netbeans:
import lombok.Getter;
import lombok.Setter;
But auto setters and getters don't work (no autocompletion / "cannot find symbol ...").
Strange thing is that for another project I have it's working fine! But I can't figure the differences.
I tested to:
change the lombok version (even the last): for any version, the import don't work anymore
build the project with Maven: it's OK!
use Eclipse: it's OK! (but I am the only one to decide unfortunately)
=> so I'm sure this is a Netbeans related problem
- enable annotation processing, as I've seen in tutorials=> I don't have such option in my project properties
Any idea ?
This worked with us:
<scope>provided</scope>
from the Lombok dependency1.16.20
to1.16.16
)<scope>provided</scope>
I found a solution on https://groups.google.com/forum/#!topic/project-lombok/xbgzA86pvJs
=> update version of maven-compiler-plugin was the only way to make it work
configure the pom
Then, specify lombok-build as the active profile for various actions (build, debug etc) under Project Properties->Actions->Activate Profiles.
At this blog there is a github sample project and the configuration with pictures to use lastest version of maven+netbeans+lombok, that works for me.
In Netbeans 8.2 using Apache Maven 3.5.4 use Lombok 1.18.4 or much older 1.16.16.
In Netbeans 10.0/9.0 using Apache Maven 3.5.4 use Lombok 1.18.4, older versions of Lombok are really buggy when Compile On Save is used in Netbeans 10.0/9.0
I updated Lombok to a new version
NB
This is not needed, as Maven and Netbeans does this out of the box. You only need the right Lombok dependency in Maven.