Java 17, Gradle 7.5 (글 작성 시점 기준 최신버전) 환경에서 작업하던 Springboot 프로젝트를 GCP로 clone해서 빌드를 시도했다. apt를 이용해서 JDK, Git, Gradle 등 필요한 것들을 설치해둔 상황이였는데, 아래 에러가 발생했다.
Spring Boot plugin requires Gradle 6.8.x, 6.9.x, or 7.x.
The current version is Gradle 4.4.1 Spring Boot plugin requires Gradle 6.8.x, 6.9.x, or 7.x.
The current version is Gradle 4.4.1
apt를 이용해서 설치하는 Gradle은 기본적으로 4.4.1 버전이다. 높은 버전을 원한다면 직접 설치한 뒤, 환경 변수를 설정 해줘야 한다.
그럼 높은 버전의 Gradle을 직접 설치하는 법을 알아보자!
아래 링크는 Gradle 공식 홈페이지이다. 접속해서 최신 버전을 확인하자.
https://gradle.org/install/
또한, Gradle 공식 홈페이지를 보면 Java나 Kotlin의 버전에 따라 필요한 Gradle의 최소 버전 표를 확인 할 수 있다. 이 Compatibility Table을 보고 설치 할 버전을 선택하면 된다. 나는 Java 17 환경의 프로젝트를 개발중이므로 7.3이상의 버전을 설치해야한다. 따라서 최신버전인 7.5.1 버전을 설치하기로 했다.
(출처: https://docs.gradle.org/current/userguide/compatibility.html)
sudo apt install wget
apt를 이용해서 Gradle을 설치하는 방식은 우리가 원하는 버전의 Gradle을 설치 할 수 없으므로 wget을 이용할 것이다. wget이 설치되어 있지 않다면, 위 명령어를 이용해서 wget을 설치해주자. 이미 wget이 설치되어 있다면 생략 가능하다.
wget https://services.gradle.org/distributions/gradle-7.5.1-bin.zip -P /tmp
내가 설치 할 버전에 맞게 gradle-7.5.1-bin.zip 부분의 숫자를 바꿔주면 된다.
sudo unzip -d /opt/gradle /tmp/gradle-7.5.1-bin.zip
위에서 zip파일을 /tmp 디렉터리에 다운로드 받았으니, 거기에 있는 zip 파일을 opt/gradle 디렉터리에 unzip한다. unzip 명령어는 sudo로 실행해야 한다. 만약, unzip을 시도했는데
-bash: unzip: command not found
위와 같은 에러가 뜬다면 zip 관련 프로그램이 설치되어 있지 않은것이니, 아래 명령어를 이용해서 설치해주자!
sudo apt-get install unzip
opt/gradle 경로에 제대로 unzip 되어있는지 확인하기 위해 ls 명령어로 확인해본다.
ls /opt/gradle/gradle-7.5.1
이렇게 폴더 구조가 잘 나열되면 성공적으로 unzip 된것이다.
우리가 사용 할 Gradle 버전이 4.4.1이 아닌, 7.5.1 버전이라는 것을 설정 해줘야한다. nano라는 텍스트 편집기를 이용해서 설정파일을 편집한다.
sudo nano /etc/profile.d/gradle.sh
만약, -bash: unzip: command not found
에러가 발생한다면 nano가 설치 되어 있지 않은 것이니 아래 명령어를 실행해서 nano를 설치하도록 하자.
sudo apt-get install nano
파일을 열었으면 아래 내용을 붙여 넣자.
export GRADLE_HOME=/opt/gradle/gradle-7.5.1
export PATH=${GRADLE_HOME}/bin:${PATH}
본인이 설정한 버전에 맞게 1번째 라인의 버전 숫자를 고쳐주자!
붙여넣고, Ctrl+O를 누르면 아래와 같이 파일명을 정하라고 한다.
(Ctrl+O는 nano 편집기의 저장 커맨드이다.)
우리는 파일명을 바꾸지 않을 것이므로 그대로 엔터를 눌러주고 Ctrl+X를 눌러 nano 편집기를 빠져나온다.
이제 아래 명령어로 방금 작성한 스크립트를 실행시켜준다.
sudo chmod +x /etc/profile.d/gradle.sh
마지막으로 아래 명령어를 통해 환경 변수를 로드해준다.
source /etc/profile.d/gradle.sh
gradle -v
성공적으로 최신 버전이 설치 된 것을 확인 할 수 있다.