如何避免 IntelliJ 中可嵌入 类 的验证错误 "Cannot resolve column 'xy'"?
How to avoid validation error "Cannot resolve column 'xy'" for embeddable classes in IntelliJ?
我在 Java/Hibernate 项目中使用 IntelliJ。我还为该项目分配了一个数据源,因此不存在的列的大部分 JPA 验证错误都消失了。
剩下的唯一错误是针对在@Embeddable 类 中定义的这些列,例如:
@Embeddable
public class MyEmbeddedClass {
@Column(name="my_embedded_column")
private String myEmbeddedColumn;
IntelliJ 不断警告我数据模型中不存在这些列:
"Cannot resolve column 'my_embedded_column'"
有什么方法可以让 IntelliJ 跳过这些针对 @Embeddable 类 的 JPA 验证检查而不禁用整个 JPA 验证功能,或者我是否应该为 JPA 验证插件创建错误票?
同样的问题。我遵循了@Andrey 的建议,它对我有用。
我已经将我的@embeddable 类 移动到一个子包中 (org.mydomain.back.entities.ids)。
我已经定义了一个范围 "MyCustomScope",明确排除了这个子包。然后我这样配置 "Inspections-->JPA-->Unresolved databases references in annotations":
按范围划分的严重性:
- MyCustomScope (allButEmbeddedKeys):选中并 "Error"。
- 其他地方:未选中。
它更像是一种解决方法,而不是实际的解决方案,因为在 类 中禁用了 JPA 检查,可能会带来所有不便。但是 "embeddableId" 类 中的所有错误都消失了。也适用于在该子包中定义的新 类。
希望对您有所帮助!
我在 Java/Hibernate 项目中使用 IntelliJ。我还为该项目分配了一个数据源,因此不存在的列的大部分 JPA 验证错误都消失了。
剩下的唯一错误是针对在@Embeddable 类 中定义的这些列,例如:
@Embeddable
public class MyEmbeddedClass {
@Column(name="my_embedded_column")
private String myEmbeddedColumn;
IntelliJ 不断警告我数据模型中不存在这些列:
"Cannot resolve column 'my_embedded_column'"
有什么方法可以让 IntelliJ 跳过这些针对 @Embeddable 类 的 JPA 验证检查而不禁用整个 JPA 验证功能,或者我是否应该为 JPA 验证插件创建错误票?
同样的问题。我遵循了@Andrey 的建议,它对我有用。 我已经将我的@embeddable 类 移动到一个子包中 (org.mydomain.back.entities.ids)。 我已经定义了一个范围 "MyCustomScope",明确排除了这个子包。然后我这样配置 "Inspections-->JPA-->Unresolved databases references in annotations":
按范围划分的严重性: - MyCustomScope (allButEmbeddedKeys):选中并 "Error"。 - 其他地方:未选中。
它更像是一种解决方法,而不是实际的解决方案,因为在 类 中禁用了 JPA 检查,可能会带来所有不便。但是 "embeddableId" 类 中的所有错误都消失了。也适用于在该子包中定义的新 类。 希望对您有所帮助!