본문 바로가기
Project/Mannalga

Java Version 변경 후 Gradle Build가 되지 않을 때

by EricJeong 2021. 3. 15.

개요

Super Invention은 Kotlin 기반으로 제작되는 Rest API 서비스입니다. 개발을 진행하다가 Java/Kotlin/Gradle의 버전업을 진행하였고, 버전업 직후부터 빌드가 되지 않는 이슈가 생겼습니다.

 

Java 및 Kotlin의 새로운 버전 설치는 IntelliJ에게 맡겨두고 버전 업된 버전을 설정파일에 명시해주기만 하면 되는 간단한 작업이었습니다. 소스코드는 아래와 같이 수정하였습니다.

 

새롭게 깔린 자바 버전으로 제 윈도우 데스크탑의 환경변수 JAVA_HOME 경로를 변경해주었고 gradle도 새로운 버전에 따라 새로 설치하였습니다. 새로운 자바가 잘 설정되었는지 확인하는 것에는 CMD창을 연 후 자바 버전을 확인하는것 만큼 확실한 방법이 또 없습니다. 바로 자바 버전을 확인하니 잘 출력되는 것을 확인하였습니다.

 

 

빌드 실패

버전을 올린 직후 빌드가 되지 않았습니다. Gradle에서는 기묘한 에러를 출력하고 있었는데요, Main class를 찾을 수 없다는 오류를 주고 있었습니다. 바로 아래 오류였습니다.

org.gradle.wrapper.GradleWrapperMain을(를) 찾거나 로드할 수 없습니다.

 

 

삽질 기록

위 오류가 발생했을 때 가장 먼저 해볼만한 것은 gradle wrapper 명령을 입력하는 것입니다. gradle-wrapper.jar 파일이 누락되어 발생하는 오류로 wrapper 파일을 생성하면 해결이 될 것입니다.....만 저는 위 방법으로 해결이 되지 않았습니다. wrap을 해도 뭘 해도 빌드가 되지 않았고 해결방법을 찾아 위 오류를 검색하여도 gradle wrapper 명령어를 입력하라는 말만 나올 뿐이었죠.

 

하지만 모든게 동일한 소스코드임에도 같이 작업하던 팀원은 빌드가 되었고, 저는 빌드가 되지 않았습니다. 자바 버전과 코틀린 버전, gradle 버전까지 모든 것이 동일하였고 운영체제와 환경변수 설정까지 모두 동일한 환경이었죠. 

 

IntelliJ 재설치

팀원에게 빌드가 되지 않는 경우가 없었느냐 물으니 동일한 이슈를 겪었다는 제보를 받았습니다. 해결방법이 참 간단(?)했습니다. IntelliJ를 재설치하는 것입니다.

 

IntelliJ를 지우고, 재설치하고, Java도 지우고, 재설치하고를 몇번 반복해보았습니다. 빌드가 되었을까요? 어림도 없습니다. gradle은 빌드할 때 마다 동일한 에러를 뱉고있었습니다.

org.gradle.wrapper.GradleWrapperMain을(를) 찾거나 로드할 수 없습니다.

 

Gradle과 관련된 모든 파일 삭제후 재설정

두번째로 선택한 방법은 Gradle에서 발생하는 오류이니, Gradle 버전도 좀 바꿔보고 gradlew도 바꾸며 환경을 모두 바꿔보는 것이었습니다.

gradle 디렉토리를 삭제한 후 다시 gradle wrapper를 실행하니 gradle-wrapper.jar가 잘 생성이 되었습니다. 다시 빌드를 돌려보았습니다. 빌드가 되었을까요? 어림도 없죠!

org.gradle.wrapper.GradleWrapperMain을(를) 찾거나 로드할 수 없습니다.

 

해결 방법

이 문제를 google 및 stackoverflow에 찾아보았지만 동일한 오류를 겪는 경우는 생각보다 희귀했습니다. 며칠을 고민한 끝에 섬뜩하게 뇌리를 스치는 생각이 있었습니다. CMD창을 노려보는 도중 보인 것은.. 제 계정의 이름이 한글명이라는 것입니다. 자바 버전을 입력할 때 보이는 계정이 한글인것이죠. 세상에나.

 

자바가 설치된 디렉토리는 제 계정을 기준으로 path가 짜여져있었습니다. 맙소사. 그래서 자바를 D드라이브로 옮겨주었고 JAVA_HOME을 변경해주었습니다. 기도하는 마음으로 빌드를 돌려보았습니다. 빌드가 됩니다.

 

결국 문제는 JDK가 설치된 Path에 한글이 포함된 것이었습니다. Gradle에서 JDK를 이용하는 부분에서 무언가 한글 처리가 되지 않는 부분이 있는듯 합니다. 혹시나 저처럼 여러 일을 고통받지 마시고, 개발하실 때에는 꼭 한글 경로가 있는 곳에 개발과 관련된 일체의 설치를 안하시기를 권장드립니다.

 

 

 

'Project > Mannalga' 카테고리의 다른 글

40주간 진행한 사이트 프로젝트 후기  (21) 2021.04.18
Super Invention 프로젝트 소개  (5) 2020.09.29

댓글