Search

Query dsl Q-class 생성 오류

태그
JPA
이전부터 실행을 하면 Q-class 가 생성이 되지 않았다는 문구가 자주 떴었습니다. 그동안은 화면단만 구현하느라 사용하지 않는 클래스의 경우 excluded 상태로 지정해놓고 작업했었는데, 이제는 처리해야 할 것 같아 여기저기 알아보았습니다.
아래는 결과이며, 순서대로 수행 → 실행 을 반복하면 될 것 같습니다.

첫번째

target 패키지 안의 generated-sources 가 sources 로 되어있는가? (파란색 폴더)

두번째

세번째

네번째

빌드까지 제대로 되었다면 이제는 코드 문제입니다.
저의 경우 에러문구가 다음과 같았습니다.
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/ HibernateJpaConfiguration.class]: Invocation of init method failed; nested exception is javax.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.loader.MultipleBagFetchException: cannot simultaneously fetch multiple bags: [multi.second.project.domain.planner.domain.Planner.todolists, multi.second.project.domain.group.domain.TravelGroup.participants]
Plain Text
복사
찬찬히 살펴보면 fetch 에 관한 문제라는것을 알 수 있습니다. 그래서 해당 도메인을가서 fetch 부분을 살펴보았습니다.

Planner.java

TravelGroup.java

테스트 코드를 돌리기위해 planner 에 fetch 를 넣었는데 그게 화근이였습니다. 그래서 아래부분을 지우고 돌렸더니 해결되었습니다.

에러와 관련된 내용