编译器无法识别覆盖方法的 Lombok Getter

Compiler doesn't recognize Lombok Getter for overriden method

假设我们在外部工件中有一个接口 TestInterface,我们无法更改:

public interface TestInterface {

    Boolean isTest();
    //more getter and setter methods
}

以及这个接口的一个实现,更多的成员对应于父接口。 Lombok 生成的 getters/ setter 无法被编译器识别,所以我必须添加实际的 getter 方法来使下面的 class 可编译。

@Getter
@Setter
public class TestImplementation implements TestInterface {

    Boolean test;
    //more members
}

编译错误是接口方法未实现时的标准错误:

my.package.TestImplementation 不是抽象的,不会覆盖 my.package.TestInterface

中的抽象方法 isTest()

假设Lombok的getters和setter是在编译后生成的,我不明白为什么getters(由Lombok生成)的正常调用是可编译的。

问题好像是对于一个字段Boolean test,Lombok会生成一个方法Boolean getTest(),而不是接口要求的Boolean isTest()。仅当 属性 为 boolean test 时,您才会获得 boolean isTest() 方法,但 return 类型与接口不匹配。

所以似乎没有办法自己实现 isTest 方法。