이번 팀 프로젝트에서는 시스템으로 인해 고통받았다.
이런 문제가 또 발생했을 때, 빠르게 극복해낼 수 있도록 문제와 해결 방법을 정리하고자 한다.

🤦‍♀️ IntelliJ 'Cannot resolve symbol' 에러

몇 분 전까지만 해도 잘 돌아가던 프로그램이 코드를 딱 한 단어 바꾸고 재실행했을 뿐인데 오류가 발생했다.

https://ottl-seo.tistory.com/44

내가 겪은 오류 메시지는 캡쳐를 해놓지 않았기 때문에 다른 블로그의 오류 이미지를 첨부한다.
위의 이미지와 비슷한데 내 경우에는 UserService가 import된 경로를 찾을 수 없다는 오류였다.

아무리 봐도 잘못 바꾼 코드가 없고, 경로도 너무나 정확한데 오류가 해결되지 않았다.

왜냐하면 그건 내 잘못이 아니었기 때문... 😭

💡 해결 방법

원인은 IntelliJ에서 캐시 문제로 인해 파일을 인식하지 못하는 오류가 발생하는 것이라고 한다.
따라서 해결방법 역시 간단하다.

캐시 무효화 후 다시 빌드를 하면 문제가 해결된다!

또는 Gradle Clean으로도 해결할 수 있다!


🤦‍♀️ Windows 대소문자 구분하지 않음으로 인한 에러

초기에 실수로 패키지 이름의 첫 글자가 대문자로 적히는 문제가 있었다.
그로 인해 패키지 명이 어떤 브랜치에서는 소문자, 또  다른 브랜치에서는 대문자였다.

두 브랜치를 병합하려고 하는데 이로 인해 충돌이 발생했다.

충돌이 발생했다고 하는 파일에 대해 충돌을 직접 해결해줬는데도 계속 충돌이 발생했다고 뜨고,
심지어 내용도 빈 내용이어서 수정할 것도 없었다.

여차저차 겨우 오류를 수정한 후 커밋을 하니
대문자 폴더와 소문자 폴더 2개가 만들어져 있었다.

💡 해결 방법

Filename.java를 바로 filename.java로 바꿀 수 없다.

중간 리네이밍을 통해서 우회하여 폴더명을 변경해줘야 한다.

git mv FileName.java TempName.java
git mv TempName.java filename.java
git commit -m "Rename FileName.java to filename.java"

🤦‍♀️ Git Pull을 했을 때, application.properties 사라짐

application.properties는 민감 정보이기 때문에 Git에 업로드 되지 않도록 .gitignore의 대상으로 설정해줘야 한다.

그런데 Git에서 이 파일을 관리하지 않기 때문에 종종 Git Pull과정에서 해당 파일이 사라지는 문제가 발생한다.

💡 해결 방법

백업 파일을 만들어서 따로 빼두자

이 방법 뿐인 것 같다.

뭐 공통 템플릿을 만들어서 사용하는 방법도 있는데
결국 개인적인 설정을 매번 변경해줘야한다는 점에서

수동 백업이 제일 편한 것 같다.

+ Recent posts