Development/Development Tools

intelliJ IDEA module에서 템플릿 못찾는 문제 해결

📝 작성 : 2021.12.02  ⏱ 수정 : 
반응형

Intro

IntelliJ IDEA 구매

intelliJ IDEA를 8월 말에 구입 한 이후로, 3개월동안 집에서 혼자 공부하거나 코딩 테스트 문제들을 풀어볼 때에는 맥북에서 꾸준히 인텔리제이를 사용 해 왔습니다. 업무용으로 사용중인 우분투 기반의 Dell XPS 노트북에서도 물론 intelliJ IDEA를 설치 했고, 가벼운 확인 용도의 코드를 작성 하거나 점심시간에 가볍게 코딩 테스트 문제를 푸는 용도로 사용 해 왔습니다만 실질적으로 회사에서 진행중인 프로젝트에서는 이클립스를 계속 사용 했습니다.

구매 후에도 Eclipse를 계속 사용해온 이유

회사에 입사하고 한달도 안되어서 intelliJ IDEA를 구입 했지만

예전부터 구독을 고민 하고 있었지만, 2021년 8월의 30% 할인은 참을 수 없었습니다.

$149 의 구독료가 $104.30 이 되는데 참을 수 없죠. 제가 주변에도 사라고 부추겨서 이번 기회로 많이들 샀습니다.

정작 신입으로 이미 익숙한 이클립스를 이용해서 낯선 코드들을 받아들이기도 벅찬 저에게 새로운 툴을 동시에 도전 한다는건 쉽지만은 않았습니다.

심지어 입사하고 받은 컴퓨터로 Windows를 사용 해 보니, wsl도 설치하고 이것 저것 노력을 해 보았지만, 너무 불편했습니다. 사용하면 할수록 저에게는 정말 영 맞지 않는 OS라는 생각이 들었습니다. 처음에 대표님이 사고싶은 노트북을 250만원 선에서 고르라고 하셨을 때 맥북을 사달라고 할걸 하며 후회도 조금 들고.. 인터넷에서 맥북은 보안프로그램이 안깔려서 실무에서 못쓴다는 말이 있어 그런 줄 알았었는데.. 막상 입사하고 보니 직원의 30%정도는 이미 맥북을 사용하고 있습니다.

그냥 집에서 쓰는 m1 맥북 에어를 가져올까 고민도 하다가 그래도 회사에서 사준 노트북이 정말 좋은 Dell XPS 제품이다 보니, Windows를 밀어 버리고 생에 처음으로 Ubuntu Desktop를 설치해서 사용 했습니다. 물론 설치 하기 전에 우려는 산더미 같았지만, 직속 사수님께서 Ubuntu를 사용해 개발 하시는 걸 봤기 때문에 어쨌든 불가능하진 않다는 생각이 들었습니다.

물론 하루 저녁에 OS를 바꾸고 생전 처음 쓰는 OS에 모든 개발 환경을 갖출 수는 없기 때문에 토일월화수 로 이어졌던 황금 추석 연휴에 목요일 백신 휴가 까지 추가해 거의 일주일을 통째로, 업무에 바로 사용할 수 있도록 저 스스로와 노트북을 준비시키는데 투자했습니다. 생각보다 오래걸린다 싶으면 금요일 연차까지 내서 9일을 배팅하면 가능하다는 생각을 했습니다.

어쨌든 결론적으로 쉽지는 않았어도 기간 내에 개발환경을 모두 구축하고 프로젝트를 띄우는데 성공해서 금요일에 연차를 낼 필요는 없었습니다.

이렇게 새로운 OS까지 쓰는 마당에 IDE까지 새로운 걸 쓰긴 벅찼습니다.

국비 학원 3개월차에 과감하게 생애 처음으로 맥북을 구입하고, 빨리 적응하기 위해 학원에서도 맥북을 모니터에 연결해 윈도우즈 환경으로 진행하는 수업을 맥북으로 따라서 들었었는데, 처음 일주일은 정말 내가 뭔짓을 하고 있나 할 정도로 힘들고 스트레스도 참 많이 받았지만 그때의 경험이 개발자로서의 야생성을 기르는데 정말 도움이 되었습니다.

그러면 이번에도 이왕 하는거 OS 도 , IDE도 몽땅 바꿔서 새로 개발하면 되지 않느냐 싶겠지만. 학원에서 수업을 제대로 못따라간다면 그건 제가 피해를 보고 말지만, 회사는 제가 급여를 받으며 다니는 입장이기 때문에 스스로의 역할을 충분히 다해내는 선 까지만 무리를 할 수 있다고 생각합니다.

어쨌든 그렇게 시간이 좀 더 지나서, 회사 코드에도 Ubuntu에도 충분히 익숙해 졌다는 생각이 들었고, 업무에서의 프로젝트를 제외한 모든 코드들은 모두 IntelliJ IDEA를 사용하다보니 어느정도 파악이 되어 충분히 넘어 갈 준비가 되었다는 생각이 들었습니다.

그렇게 인텔리제이로의 완전 이주를 결심한 그날 이후로도, 몇주가 지난 오늘까지도 이클립스를 써왔습니다.

Could not find template

시간 날때마다 틈틈히 인텔리제이를 활용해 프로젝트를 띄워보려고 했는데, 뭐 해결을 다 한 지금에야 아무것도 아닌 문제였다는 생각이 들지만 이 에러가 지금까지 정말 까마득히 높은, 넘거나 뚫을 수 없는 견고한 벽 이었습니다.

image-20211202095322828

인텔리제이에서는 이클립스와 다르게 워크스페이스 개념이 없기 때문에 여러개의 프로젝트를 띄우려면 module로 추가 해서 사용 해야 합니다. 그렇게 여러개의 프로젝트를 불러오면 실행에도 문제가 없습니다.

허나 페이지를 이동 해보면, 메인으로 불러온 프로젝트에는 아무런 문제가 없지만 모듈로 추가한 모든 프로젝트들에서는 템플릿 파일을 찾지 못했습니다.

이것도 물론, 요즘의 스프링부트 처럼 resources 폴더에 template 폴더가 있었다면 문제가 없었을텐데, 진행중인 프로젝트가 몇년째 이어져 오는 프로젝트의 코드이다 보니 template을 webapp 폴더하위의 WEB-INF 폴더에 보관 하고 있었습니다.

해당 프로젝트는 jsp를 사용 하지 않는데, jsp로 프로젝트를 하시는 분들도 아마 똑같이 모듈로 불러온 프로젝트가 템플릿을 찾지 못해 고생을 하실 거라는 생각이 드네요.

image-20211202095404498

정말 이걸 해결해보려고 별에 별 짓을 다 해봤는데 문제 해결이 되지 않았고 구글에 아무리 검색해도 해결 방법을 찾을 수 없었습니다.

해결

그렇게 매일 짬 날 때 마다 꾸준히 시도를 해 왔는데, 드디어 오늘 문제가 해결되었습니다. 이클립스와 작별할 시간이 왔습니다.

경로 문제라는 건 당연히 알고 있었는데 어떻게 경로를 변경 해 줄 수 있을지 프로젝트 설정에서만 죽어라 찾고 있었는데요.. 알고보니 프로젝트 설정이 아닌 Run Configurations에 해답이 있었습니다.

https://stackoverflow.com/questions/44794588/intellij-run-configuration-spring-boot-vs-maven-issues

Run/Debug Configurations 에서 Working directory를 변경해주면 됩니다.

각 모듈 스스로의 경로는 $MODULE_DIR$로 받아 올 수 있습니다.

image-20211202095638478

모든 서브 모듈들의 Working directory를 변경 해 주니 드디어 정상적으로 템플릿 파일을 찾아 오고, 아무런 문제 없이 프로젝트를 불러 옵니다.

그래서 오늘 하루 인텔리제이를 이용해 프로젝트를 진행 해 보니 확실하게 이클립스에 비해 우위에 있습니다. 사소한 것 하나 하나 아직 사용법을 자세히 파악하기 전 인데도, 여러 가지 기능들이 워낙에 뛰어나고 편의성과 생산성이 훌륭하다 보니 그야말로 코딩하는 재미가 훨씬 커졌습니다.

저처럼, 모듈 문제로 이클립스를 벗어나지 못했던 모든 분들이 모두 해방되기를 기원합니다.

반응형