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

KR KHS님의 프로필 이미지
KR KHS

작성한 질문수

실전! Querydsl

조회 API 컨트롤러 개발

QMemberTeamDto의 NoClassDefFound

해결된 질문

작성

·

249

0

안녕하세요 강의 잘 듣고 있습니다.

 

중간에 조회 API 개발의 내용 중 QMemberTeamDto를 조회하는 메소드로 컨트롤러를 통해 응답을 주는 컨트롤러를 작성하는 내용이 있는데요

 

같은 내용의 Test는 통과하였으나 포스트맨에서 요청을 할 때는 NoClassDefFound 에러가 발생합니다

 

build가 되지 않았나? 해서 gradle로 clean compileJava compileQuerydsl 모두 실행하고 해봐도 같은 결과입니다

 

빌드된 결과

 

에러 내용

답변 2

0

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. KR KHS님

해당 프로젝트를 받아서 실행해보니 정상 동작합니다.

참고로 자바 11 버전으로 변경해서 실행했습니다. Querydsl이나 gradle 내부 여러 기능에서 아직 자바 17을 지원하지 않을 수 있습니다.

그게 아니라면 IDE에서 뭔가 꼬인 것 같은데요, 프로젝트를 새로 생성해서 소스코드만 복사해서 새로 진행해보시길 바랍니다.

감사합니다.

KR KHS님의 프로필 이미지
KR KHS
질문자

확인 감사합니다 말씀하신대로 자바 버전 변경해서 진행해보겠습니다

KR KHS님의 프로필 이미지
KR KHS
질문자

자바 버전을 11과 8로 바꿔서 해도 동일 증상이 나타나서 좀 더 검색해서 해당 현상을 고쳤습니다.

 

VSCode의 기본 classpath 설정 문제로 generated Querydsl 클래스들을 현재 실행 중인 main 스레드와 별개로 인식하고 있어서 발생하고 있었습니다.

 

VSCode ClassNotFoundException 해결 (tistory.com)

 

위 링크의 내용을 보고 classpath 설정을 변경하여 테스트 성공 했습니다.

김영한님의 프로필 이미지
김영한
지식공유자

KR KHS님 문제를 해결하고, 또 공유해주셔서 다른 분들께도 도움이 될 것 같아요. 고맙습니다.

0

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. KR KHS님

전체 프로젝트를 압축해서 구글 드라이브로 공유해서 링크를 남겨주세요.

구글 드라이브 업로드 방법은 다음을 참고해주세요.

https://bit.ly/3fX6ygx

주의: 업로드시 링크에 있는 권한 문제 꼭 확인해주세요

추가로 다음 내용도 코멘트 부탁드립니다.

1. 실행 방법을 알려주세요.

2. 어떻게 문제를 확인할 수 있는지 자세한 설명을 남겨주세요.

감사합니다.

KR KHS님의 프로필 이미지
KR KHS
질문자

프로젝트 압축 파일 - https://drive.google.com/file/d/1Ht2EYmlsZBLtcwgrVOdzCKJ0gN3qL3_x/view?usp=sharing

 

실행 환경

- Windows 11

- 자바 17.0.2

- VSCode v1.67.0

- Extension Pack for Java v0.22.4

- Debugger for Java v0.40.1

- Test Runner for Java v0.35.0

 

메인 클래스

- src\main\java\io\hskim\learnjpapart4\LearnJpaPart4Application.java

 

오류 발생 상황

정상 - 테스트 클래스에서 테스트시

테스트 클래스

- src\test\java\io\hskim\learnjpapart4\repository\MemberRepositoryTest.java

- 47번 라인 searchTest 메소드

 

오류 - Spring을 실행하여 웹 환경 구동 후 포스트맨에서 localhost:8080/v3/member 호출 시 NoClassDefFound 에러 발생

Repo 클래스

- src\main\java\io\hskim\learnjpapart4\repository\MemberRepositoryImpl.java

- 151번 라인 searchPageComplex 메소드

 

바쁘신데 확인 요청드려 죄송합니다

KR KHS님의 프로필 이미지
KR KHS

작성한 질문수

질문하기