Lombok causing "Actual and formal arguments lists differ in length error"
JavaLombokIntellij Lombok-PluginJava Problem Overview
I have the following class:
@Builder @NoArgsConstructor
public class ConsultationPointOfContact {
private String fullName;
private String phoneNumber;
private String userLogin;
}
When the @Builder
annotation exists, it is causing problems with the @NoArgsConstructor
.
I am getting the error:
Error:(11, 1) java: constructor ConsultationPointOfContact in class models.ConsultationPointOfContact cannot be applied to given types;
required: no arguments
found: java.lang.String,java.lang.String,java.lang.String
reason: actual and formal argument lists differ in length
Java Solutions
Solution 1 - Java
Add @AllArgsConstructor
as well and this should fix the issue
Solution 2 - Java
For me works this:
- upgrade or install Lombok plugin on IntellIJ and enable annotation processing checkbox for your module
Solution 3 - Java
Met the same issue with lombok and gradle. The same code works with maven, but throws error when using the gradle way.
So the issue turns out to be with lombok and gradle, so I searched the keywords lombok gradle
, and find an article: https://projectlombok.org/setup/gradle.
By referencing the article's tip and added the following to build.gradle, then it works like a charm!
...
dependencies {
...
compileOnly 'org.projectlombok:lombok:1.18.22'
annotationProcessor 'org.projectlombok:lombok:1.18.22'
testCompileOnly 'org.projectlombok:lombok:1.18.22'
testAnnotationProcessor 'org.projectlombok:lombok:1.18.22'
...
}
...