AWS EC2 서버(Amazon Linux 2 AMI (HVM), SSD Volume Type)에
SpringBoot-WebService 프로젝트를 gin clone
으로 불러온 후,./gradlew test
로 테스트로 검증하는 과정에서 에러가 발생했다.
org.gradle.launcher.daemon.client.DaemonDisappearedException
: Gradle build daemon disappeared unexpectedly
(it may have been killed or may have crashed)
프로젝트 작업 환경은 Windows / IntelliJ였다. 또한 인코딩 문제를 예방하기 위해
사전에 settings 에서 프로젝트 인코딩을 'UTF-8'로 잡아주었다.
정확한 원인은 알 수 없지만, 서버 측에서 프로젝트를 받아 빌드하는 과정에서
ASCII가 아닌 문자로 인식되는 부분이 있는 모양이다.
프로젝트의 build.gradle 파일이 위치한 곳과 동일한 위치에
gradle.properties 파일이 없을 경우 생성한다.
gradle.properties 파일에 아래의 내용을 추가한다.
# gradle setting
file.encoding=utf-8
gradle로 테스트를 다시 수행한다.
* ./gradlew clean test --stacktrace
BUILD SUCCESSFUL ! !
서버에 설치 된 gradle 버전과 프로젝트의 gradle 버전이 다를 수 있다.
gradle 버전이 업데이트 되면서 기존에 있던 기능이 사라지는 경우가 종종 있어서
이럴 경우, 빌드를 진행할 수 없다는 에러가 발생할 수 있다.
서버의 gradle을 프로젝트의 gradle 버전으로 재설치한다.
먼저 자신의 프로젝트에 gradle/wrapper/gradle-wrapper.properties를 찾고 distributionUrl
의 값인,
현재 프로젝트에서 사용하는 gradle 특정 버전의 direct download link URL 값을 확인한다.
distributionUrl=https://services.gradle.org/distributions/gradle-6.8-bin.zip
이 URL을 통해 서버의 gradle을 재설치 하여 프로젝트와 gradle 버전을 맞춘다.
sudo yum install wget
sudo yum install unzip
// gradle 다운 : gradle-wrapper.properties의 distributionUrl의 URL값 활용
sudo wget https://services.gradle.org/distributions/gradle-6.8-bin.zip
// 설치 디렉토리 생성
sudo mkdir /opt/gradle
// 압축 해제
sudo unzip -d /opt/gradle gradle-6.8-bin.zip
// 환경 변수 설정
export PATH=$PATH:/opt/gradle/gradle-6.8/bin
// 파일 실행 권한 부여
chmod +x ./gradlew