인프런 커뮤니티 질문&답변

작성자 없음

작성자 정보가 삭제된 글입니다.

실전! Querydsl

라이브러리 살펴보기

querydsl 설정 질문

작성

·

1.1K

0

Spring 3.1.2입니다.

설정 완료후 Gradle 리로드 했고

build -> clean과 other -> compileQuerydsl을 하는거까지는 성공을 했는데

build 과정에서 NoClassDefFoundError이 계속 발생 하여 질문 올립니다.

'''

java: java.lang.NoClassDefFoundError: javax/persistence/Entity

'''

enable annotation processer 켰습니다.

아래는 제 코드 입니다.

https://drive.google.com/file/d/1OTWgqoe7F5202wvO1Ugz51nW7XgrlLzJ/view?usp=drive_link

답변 2

1

안녕하세요. 임익주님, 공식 서포터즈 OMG입니다. AI 답변에 더하여 답변 드립니다.

올려주신 코드 확인해보았습니다. 저의 경우 clean -> compileQueryDSL시 해당 에러는 발생하지 않고 있는데요,

Jdk17로 설정하신걸까요? 저의 경우 correto17 jdk로 성공하였는데, correto 17 혹은 openjdk17로 확인해주세요 ^^ 그리고 IDE(인텔리제이)에서 jdk 설정을 17로 변경하여 확인해주세요 !

감사합니다.

test코드 빌드 중 에러가 발생하지 않으셨다는 말씀 이신가요?

저도 correto17 jdk로 설정되있습니다.

애플리케이션 빌드만 확인하였는데 테스트 코드 실행에 문제가 있었네요.

저도 동일하게

ava: java.lang.NoClassDefFoundError: javax/persistence/Entity

가 발생하였고, 아래 링크의 build.gradle을 사용하여 해결하였습니다.

build.gralde 수정 후, 코끼리 버튼 클릭하여 확인해주세요 :)

 

https://www.inflearn.com/chats/700670/querydsl-springboot-3-0%EC%9D%98-gradle-%EC%84%A4%EC%A0%95%EC%9D%84-%EA%B3%B5%EC%9C%A0%ED%95%A9%EB%8B%88%EB%8B%A4

 

0

안녕하세요, 인프런 AI 인턴입니다.

NoClassDefFoundError은 해당 클래스 또는 인터페이스가 실제 실행 시에 찾을 수 없을 때 발생하는 에러입니다. 주로 빌드 경로나 클래스 패스 설정의 문제로 인해 발생하는 경우가 많습니다.

제공해주신 코드를 보니 gradle을 사용하여 querydsl을 설정하고 있는 것으로 보입니다. NoClassDefFoundError 예외가 발생하는 이유는 javax.persistence.Entity 클래스를 찾을 수 없기 때문입니다.

Gradle의 의존성을 통해 javax.persistence 라이브러리를 추가해야 합니다. build.gradle 파일에 다음과 같이 의존성을 추가해보세요.

dependencies {
// 기존 의존성 라이브러리들
compile ‘javax.persistence:persistence-api:1.0’
}

이후에 프로젝트를 다시 빌드하고 실행해보세요. 문제가 해결되지 않는다면, Gradle의 설정이나 빌드 경로 관련한 문제일 수 있으므로 빌드 설정을 확인해보시는 것을 추천합니다.

링크를 제공해주셨지만, 해당 파일은 구글 드라이브로 연결되어 있어 접근할 수 없습니다. 코드 상의 문제가 있으면 자세한 내용을 알려주시면 도움을 드릴 수 있을 것입니다.

감사합니다.

작성자 없음

작성자 정보가 삭제된 글입니다.

질문하기