为什么IntelliJ的JPA检查告诉我"为字段'id'配置了多个属性"?

kc2*_*001 4 jpa intellij-idea

我有许多一般形式的JPA实体类:

@Entity
@Table(name = "MY_TABLE", catalog = "", schema = "VBMSUI")
@NamedQueries({...})
public class MyEntity implements Serializable {
    private static final long serialVersionUID = 1L;
    @Id
    @Basic(optional = false)
    @Column(name = "ID")
    @GeneratedValue(strategy=GenerationType.SEQUENCE,
            generator="MY_TABLE_ID_SEQ")
    @SequenceGenerator(name="MY_TABLE_ID_SEQ",
            sequenceName = "MY_TABLE_ID_SEQ")
    private BigDecimal id;
...
}
Run Code Online (Sandbox Code Playgroud)

IntelliJ的检查工具以红色突出显示"id",并提供消息 - "为字段'id'配置了多个属性".

在此输入图像描述

在标识为id的类中没有其他属性.有一个getter和一个"id"的setter,但它们没有注释.顺便说一下,实体类的代码是由NetBeans生成的,它似乎有效.

发生了什么,我该如何纠正?

Bas*_*sen 8

这似乎是因为你在同一个属性上有两个@Id@Basic注释(快速修复建议删除其中任何一个).我不是JPA的专家,但它看起来对我有用,所以也许它是IntelliJ检查中的一个错误,应该在他们的bugtracker中报告.