🦁멋쟁이사자처럼 백엔드 부트캠프 13기 🦁
TIL 회고 - [85]일차
🚀85일차에 발생했었던 오류해결과정을 회고하고자한다.
빌드가 되지 않는 오류
⚠️오류원인
팀원들이 개발했던 엔티티들을 develop 브랜치에 Merge한 후 기능 개발에 대한 것을 분담할 수 있었다.
기능 개발 분담 후 develop 브랜치의 내용을 git pull 해서 실행시켜보려는데 오류가 발생했다.
- main 클래스 실행시 (SpringBoot) 실행이 되지 않는 문제
오류 코드 :
Error: LinkageError occurred while loading main class com.likelion.momentreeblog.MomentreeblogApplication
✅해결방법
SDK 버전 17 → 21로 변경
Project Structure 에서 SDK변경
빌드 시 @SuperBuilder 관련 오류
⚠️오류원인
Task :compileJava C:\Workspace\Lion_Project\momentree_blog\backend\momentreeblog\src\main\java\com\likelion\momentreeblog\domain\board\board\entity\Board.java:46: warning: @SuperBuilder will ignore the initializing expression entirely. If you want the initializing expression to serve as default, add @Builder.Default. If it is not supposed to be settable during building, make the field final. private List<Like> likes = new ArrayList<>(); // 좋아요 테이블, 리스트타입 ^ 1 warning OpenJDK 64-Bit Server VM warning: Sharing is only supported for boot loader classes because bootstrap classpath has been appended
💡오류분석
필드에 직접 초기값을 주었는데, 클래스에 @SuperBuilder가 붙어 있는 경우 이 초기값이 무시된다는 경고
즉, likes = new ArrayList<>() 이 초기화 코드는 빌더로 객체 생성 시에는 적용되지 않음
✅해결방법
기본값으로 유지하는 방법으로 해결한다.
@Builder.Default
@OneToMany(mappedBy = "board", cascade = CascadeType.ALL, orphanRemoval = true)
private List<Like> likes = new ArrayList<>(); // 좋아요 테이블, 리스트타입
- @SuperBuilder 사용 시에도 likes 필드에 기본값으로 new ArrayList<>()가 자동으로 설정
- 정리하자면
@SuperBuilder will ignore the initializing expression... 경고문구
➡️ Lombok의 @SuperBuilder는 필드 초기값 무시
✅ @Builder.Default 추가
🚀회고 결과 :
팀 프로젝트로 엔티티를 각자 개발한 후 Merge하는 과정에서도 어려움이 많았는데
Merge한 것을 pull 받아 테스트해보는 과정에서 오류가 발생하여 기능 개발 착수하기 전부터
빌드 오류 해결에 힘썼던 것 같다.
고려해야할 사항들이 많음을 깨닫는 회고였다.
'Recording > 에러 기록장' 카테고리의 다른 글
[멋쟁이사자처럼 부트캠프 TIL 회고] BE 13기_88일차_"원격브랜치와 로컬브랜치 충돌해결" (0) | 2025.04.16 |
---|---|
[멋쟁이사자처럼 부트캠프 TIL 회고] BE 13기_86일차_"git branch 오류 해결" (0) | 2025.04.15 |
[멋쟁이사자처럼 부트캠프 TIL 회고] BE 13기_84일차_"협업 - 브랜치 및 .idea 충돌 해결과정" (0) | 2025.04.11 |
[Spring Data JPA] RESTful API 에서 "특정 사용자 조회" 오류 해결 (0) | 2025.02.21 |
[Spring Data JPA] 여러 관계가 매핑된 엔티티의 toString() 메소드 출력 오류 (0) | 2025.02.21 |