として注釈が付けられたエンティティがあります
@Enumerated( EnumType.ORDINAL )
private CommentStatus cd_status = CommentStatus.DEFAULT;
私の Q クラスが生成します
public final EnumPath<CommentStatus> cd_status = createEnum("cd_status", CommentStatus.class);
次のステートメントを使用します。
QCommentEntity tableComment = QCommentEntity.commentEntity;
EnumPath<CommentStatus> o = tableComment.cd_status;
コンパイル時に次のエラーが発生しますtableComment.cd_status
。
Type mismatch: cannot convert from NumberPath<Integer> to EnumPath<CommentStatus>
ええと、NumberPath? これは EnumPath タイプです。何?
querydsl 内部の経験はありません。なぜこうなった?
QueryDSL 3.2.2
編集1:
$ mvn dependency:tree -Dverbose -Dincludes=com.mysema.querydsl
+- com.mysema.querydsl:querydsl-jpa:jar:3.2.2:compile
[INFO] | \- com.mysema.querydsl:querydsl-core:jar:3.2.2:compile
[INFO] \- com.mysema.querydsl:querydsl-apt:jar:3.2.2:provided
[INFO] \- com.mysema.querydsl:querydsl-codegen:jar:3.2.2:provided
[INFO] \- (com.mysema.querydsl:querydsl-core:jar:3.2.2:provided - omitted for duplicate)
querydsl-jpa-3.2.2-apt-hibernate-one-jar.jar
Eclipse Q クラスの生成に使用する