에러가 잔득 발생했다.
오늘 오전에 발생한 에러인데 오전 세시가 되어서야 해결했다...
이건 아고라에 올려도 해결할 수 없는 문제였기에 조금 울고싶었고... 돈이 생기면 진쯔 내가.. 반드시 맥으로 바꾸리라 마음먹었다.
🚨 에러 1
caused by: java.lang.classnotfoundexception: worker.org.gradle.process.internal.worker.gradleworkermain
이 에러만 있던 건 아닌데 gradle 에러가 그냥 쭈우우우욱 발생하였다.
이젠 아주 익숙하게 setting 에 들어가서 gradle의 Build and Run tool들을 확인한다.
그런데 웬걸.. 이미 IntelliJ 로 되어있다...🫠
조금 더 찾아보니 다른 한글 파일명이 문제라는 글이 몇 개 보이기 시작하였고.. 아무래도 번거로운 작업이다보니 쉽게 건들고 싶지 않아 다른 방법들을 더욱 찾아보았다.
vm 옵션 편집, annotation processors 확인 등 해봤지만 모두 문제 없었다.
(하지만 없었다ㅋ)
🗝️ 해결 방법
그래서 결국 한글 파일명을 바꾸었다. << 이 과정에서 문제가 발생하였다.
윈도우 11 버전에서 변경 방법이 잘 설명된 것이 없는 것이다.
결국 따라하다가 윈도우에 에러가 발생하며 노트북이 아예 작동하지 않는 뮨제가 발생하였고 11시부터 3시까지 해결을 못해서 조금 울고싶었다.
🔗 Windows 11에서 사용자 폴더 이름을 변경하는 방법 << 이걸로 했을 때 일단 에러가 발생해서 2시간 반 정도 보냈다..아마 뒤에 설정을 더 안해줘서 그런 듯...
다시 파일명을 한글로 돌려놓으면서 노트북은 켤 수 있었고.. 다른 방법으로 서치해서 아래 영상을 보고 따라했다.
✨윈도우 11✨
아래 영상 부분 중 "로컬 사용자 및 그룹" 에서 이름을 수정하는 부분
제어판 - 사용자 계정 - 계정 이름 변경 << 다음 순서로 변경하기
🔗 윈도우 사용자 이름 변경하는 방법 (폴더명까지 바꾸기)
변경하고 나니 수천개의 에러 중 한 개의 에러만 남기고 사라졌다.
🚨 에러 2
caused by: org.springframework.beans.factory.support.beandefinitionoverrideexception at defaultlistablebeanfactory.java:1006
두 번째 에러는 동일한 이름의 빈을 중복해서 등록하려고 할 때 발생하는 에러이다.
이 에러는 실수로 빈이 다른 빈에 의해 대체되는 상황을 방지하기 위한 조치이다.
Spring Boot 2.1 버전부터 이를 방지하기 위해 기본적으로 빈의 Overriding이 허용하지 않으므로, 동일한 이름의 빈을 중복으로 등록하면 BeanDefinitionOverrideException 예외가 발생한다고 한다.
🗝️ 명시적으로 Overriding 허용하는 방법
- application.properties
spring.main.allow-bean-definition-overriding=true
- application.yml
spring:
main:
allow-bean-definition-overriding: true
나는 yml 파일을 사용하기 때문에 yml 파일을 수정해주었다. 예전에 yml 파일을 처음 수정해줄 때만 해도 이렇게 수정할 부분만 나와 있으면 어떻게 손을 대야하나 진짜 고민을 많이 했는데 이젠 알아서 잘 고칠 수 있다 : ) 많은 오류를 마주하며 조금씩 발전하고 있는 듯... 그래도 조금씩 발견하며 수정해 나간 에러들이 헛되지만은 않았나보다 라고 느낀다.
왼쪽이 수정 전 오른쪽이 수정 후
수정 후 테스트 에러 해결 완료!
오늘도 쉽지 않은 에러 해결이었지만... 해결해서 다행이다!ㅎㅎ....
앞으로는 한글 파일명은 쓰지 말아야겠다 다짐하고 또 다짐..!
주말동안에는 노트북을 싹 밀어버려야겠다.