최대 1 분 소요

문제 상황

QuerDSL을 사용하던 중 아래와 같은 에러가 발생했다.

java.lang.NoSuchFieldError: TREATED_PATH
	at com.querydsl.jpa.JPQLTemplates.<init>(JPQLTemplates.java:147) ~[querydsl-jpa-5.0.0.jar:na]
	at com.querydsl.jpa.JPQLTemplates.<init>(JPQLTemplates.java:51) ~[querydsl-jpa-5.0.0.jar:na]
	at com.querydsl.jpa.JPQLTemplates.<clinit>(JPQLTemplates.java:46) ~[querydsl-jpa-5.0.0.jar:na]
	at com.querydsl.jpa.impl.JPAProvider.<clinit>(JPAProvider.java:59) ~[querydsl-jpa-5.0.0.jar:na]
	at com.querydsl.jpa.impl.JPAQuery.<init>(JPAQuery.java:48) ~[querydsl-jpa-5.0.0.jar:na]
	at com.querydsl.jpa.impl.JPAQueryFactory.query(JPAQueryFactory.java:138) ~[querydsl-jpa-5.0.0.jar:na]
	at com.querydsl.jpa.impl.JPAQueryFactory.select(JPAQueryFactory.java:72) ~[querydsl-jpa-5.0.0.jar:na]

해결 방법

QueryDSL에 대한 버전을 명확하게 명세하지 않아 발생한 문제였다.
아래처럼 버전을 명시해 해결하였다.

dependencies {
  //QueryDSL
  implementation 'com.querydsl:querydsl-jpa:5.0.0'
  implementation "com.querydsl:querydsl-apt:5.0.0"
  implementation "com.querydsl:querydsl-core:5.0.0" // 🌟 여기! 
}

Ref.



💛 개인 공부 기록용 블로그입니다. 👻

맨 위로 이동하기