web-dev-qa-db-ja.com

IntelliJ IDEAは、JPQLで「シンボルを解決できません」で@Entityクラス名を強調表示します

IntelliJ IDEAは、JPQLの「シンボルを解決できません」で永続的な@Entityクラス名を強調表示します。

したがって、たとえば、リポジトリでクエリを宣言します。

private static final String READ_BY_CANDIDATE_KEY = "SELECT cr FROM Entity AS cr left join cr.relationship AS re left join fetch cr.relationship2 WHERE re.candidateKey=:ID";

..「Entity」は有効なクラス名であり、@ Entityアノテーションが付いていますが、「Entity」には下線が付いています。コードが実際に実行されるとき、問題はありません。

IDEがどのクラスが有効であるかを知るには、何らかの構成が必要ですか?その構成はどのように行われますか?

更新:JPAファセットはありますが、注釈付きクラスが表示されません。 persistence.xmlまたはorm.xmlが必要なようです(私のプロジェクトでは使用していません)

40
Simon Gibbs

ファセット構成でデフォルトのJPAプロバイダーを選択していないようです。使用しているプロバイダーに応じて、リストから1つを選択します。利用可能なオプションは、EclipseLink、Hibernate、OpenJPA、TopLinkです

47
rajnish

[〜#〜] jpa [〜#〜] または Hibernate ファセット configured がIntelliJ IDEAにあることを確認してくださいモジュール。

24
CrazyCoder