在 class 上方使用 Lombok @Data 注释,字段名称如 "iPhone" 导致问题

Using Lombok @Data annotation above class with field names like "iPhone" causing problems

我正在使用 Lombok 1.18.18。和 Intellij Idea 2020.3.1。 @Data class 上方的注释,字段名称如“iPhone”(以单个小写字母开头,后跟大写字母)导致 java.lang.NoSuchMethodError 在调用字段 setter 时object.setIPhone("") 或 getter 喜欢 object.getIPhone()。编译期间没有错误表明我使用的生成的方法名称是错误的。

它只发生在我身上还是像这样的字段名称存在某种已知问题?

我做了一个简单的复制,它按预期工作。

代码段:

@Data
public class Hola {

    int mundo;
    int iPhone;
}



public class Mundo {

    public static void main(String[] args) {

        Hola hola = new Hola();
        hola.setIPhone(13);

        System.out.println(hola.getIPhone());
    }

}

您是否尝试在 Intellij 之外进行编译和 运行?

好像和你的IDE关系比较大。可能注解处理被禁用了。