• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    해결됨

QMemberTeamDto의 NoClassDefFound

22.05.05 19:50 작성 조회수 171

0

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

 

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

 

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

 

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

 

빌드된 결과

 

에러 내용

답변 2

·

답변을 작성해보세요.

0

안녕하세요. KR KHS님

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

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

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

감사합니다.

KR KHS님의 프로필

KR KHS

질문자

2022.05.10

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

KR KHS님의 프로필

KR KHS

질문자

2022.05.12

자바 버전을 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

질문자

2022.05.09

프로젝트 압축 파일 - 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 메소드

 

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