【发布时间】:2018-11-20 20:33:30
【问题描述】:
我已经为 STS 安装了 lombok 1.18.4。
但是,如果我尝试在终端中使用 ./gradlew clean build 而不是通过 STS 构建我的 jar,我会收到此错误:
Task :compileJava FAILED
Image.java:12: error: constructor Image() is already defined in class Image
@NoArgsConstructor
^
1 error
我发现this 页面表明这是旧版本的龙目岛的问题。由于我似乎已经安装并通过 IDE 工作,我必须做些什么才能在终端中构建它吗?
这是我的Image 课程代码:
package com.greglturnquist.learningspringboot.learningspringboot;
import lombok.Data;
import lombok.NoArgsConstructor;
//tag::code[]
@Data
@NoArgsConstructor
public class Image {
private int id;
private String name;
public Image(int id, String name) {
this.id = id;
this.name = name;
}
}
//end::code[]
【问题讨论】:
-
你能更新
Image类代码吗? -
可能你已经定义了一个默认的无参数图像构造函数,所以如果你使用@NoArgsConstructor,你应该删除它
-
道歉。代码已更新。
-
您的 Gradle 依赖项中定义了哪个版本的 Lombok?据我所知,这是用于命令行构建的注释处理器版本。
-
实际上,它似乎是 1.16.22,我认为这是问题版本。如何在 Gradle 中更新依赖版本?
标签: java spring spring-boot lombok