Lombok does not work for Eclipse Neon

Alex picture Alex · Feb 24, 2017 · Viewed 43.5k times · Source

I downloaded lombok.jar (lombok-1.16.14.jar) put it into my Downloads. Then I clicked on this jar, the execution correctly identifies the Eclipse instances on my MacOS and then I selected the instance I want. Lombok is also specified in the pom.xml org.projectlombok lombok 1.16.14 provided

In eclipse.ini I got the addition: -javaagent:../Eclipse/lombok.jar

lombok.jar was added to the same directory as eclise.ini /Applications/Eclipse.app/Contents/Eclipse

I am still getting setter/getter errors in Eclipse Problems despite that my mvn build works fine.

The code for a User:

@Entity
@Getter
@Setter
@NoArgsConstructor
@AllArgsConstructor
@EntityListeners(UserListener.class)
public class User implements Serializable, UserDetails {
...

The error:

The method getRole() is undefined for the type User 

Answer

imTachu picture imTachu · Mar 12, 2017

Since you have already added the .jar to your lib folder, then go to the lib and execute java -jar lombok-1.16.4.jar, you'll see a wizard, specify the location of your eclipse.ini, after you are done with this your eclipse.ini file should look like this:

    -vmargs
    ...
    -javaagent:lombok.jar
    -Xbootclasspath/a:lombok.jar

For me this just worked fine but I found in other answers that:

  • You should not just "restart" Eclipse, go to File -> Exit and then open it again. taken from here
  • Don't forget to do a mvn clean just to make sure that you recompiled your classes. taken from here
  • After all this you should also right-click on your project, then Maven -> Update Project taken from here