天天看點

使用lombok的@Builder的注解:Error:java: 無法将類中的構造器應用到給定類型背景解決方案

背景

今天寫項目用lombok的

@Builder

注解,突然就報錯咯。

使用lombok的@Builder的注解:Error:java: 無法将類中的構造器應用到給定類型背景解決方案

Error:(14, 1) java: 無法将類 xxx 中的構造器 xxx 應用到給定類型;

需要: 沒有參數

找到: java.lang.Integer,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.Boolean,java.lang.Boolean,java.lang.String,java.util.Date,java.lang.String,java.util.Date

原因: 實際參數清單和形式參數清單長度不同

解決方案

builder預設用的是全參數構造函數?嘗試加了@AllArgsConstructor。

它的實作方式是會對标注這個注解的類的所有成員變量,是以在使用@Builder建構的時候如果不顯式的對某變量指派的話預設就是null,因為這個變量此時是Builder類裡的,通過調用build()方法生成具體T類則是通過私有構造函數來執行個體化,預設是全參數的構造函數。