Spring Boot 로 프로그램을 작성하고 난 후에 Compile 단계에서 다음과 같은 오류를 만날 수 있다.
1 2 3 4 5 6 |
EmployeeServiceImpl.java:13: error: constructor Employee in class Employee cannot be applied to given types; return Mono.just(new Employee(empId, "emp1", "manager", 3000)); ^ required: no arguments found: Long,String,String,int reason: actual and formal argument lists differ in length |
에러 코드를 보면 new 연산자를 이용해 Employee 객체를 생성하는 부분인데, 이부분이 문제가 된다는 것이다. required: no arguments 라고 나오지만 Employee 는 다음과 같이 되어 있다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
package local.systemv.springboot.test.apps.model; import lombok.AllArgsConstructor; import lombok.Getter; import lombok.Setter; @AllArgsConstructor @Getter @Setter public class Employee { private Long empId; private String name; private String description; private double salary; } |
@AllArgsConstructor 어노테이션을 줘서 자동으로 모든 객첵 멤버변수를 인자로 받는 컨스트럭터를 생성하도록 하고 했다. 이것은 Lombok 을 이용한 것으로 다음과 같이 gradle 에서 의존성을 줬다.
1 |
compileOnly group: 'org.projectlombok', name: 'lombok', version: '1.18.16' |
문제는 Eclipse 나 IDE 툴에서는 SpringBoot 애플리케이션이 잘만 실행되지만 정작 컴파일을 할려고 하면 […]