[英]Gradle build with Lombok
我试图用SpringBoot
和Lombok
开发一个Web应用程序以减少样板代码。
尽管带注释的类工作正常,但目标类中出现编译错误。
我不是试图通过IDE进行编译,而是直接使用gradlew build通过命令行进行编译。
关于如何将Lombok
与gradle
集成以构建和生成jar的任何建议都会很有帮助。
Git存储库: https : //github.com/ashubisht/sample-sbs.git
我得到的错误是:
\sample-sbs\src\main\java\com\sample\springboot\Controllers\RestControllerClass.java:28: error: constructor Customer in class Customer cannot be applied to given types; customerDAO.insert(new Customer(1, "Utkarsh", 25)); ^ required: no arguments found: int,String,int reason: actual and formal argument lists differ in length 1 error
客户类使用@Data注释进行注释。
在当前的lombok版本1.18.0中,Gradle 4.9存在一个问题 ,该问题将在即将发布的lombok版本1.18.2中修复。
如果您使用的是Gradle 4.9,请降级Gradle,等待lombok 1.18.2,或使用当前的lombok edge release 。
在您的Customer
类中,您要在构造函数中初始化的所有字段都是非最终的。
由于@Data
注释仅添加@RequiredArgsConstructor
,因此,如果不使用@AllArgsConstructor
显式注释此类,则无法在构造函数中初始化非最终字段。
因此,您需要使用@AllArgsConstructor
注释类,或使用setter初始化对象。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.