1. 개요
IntelliJ에서 gradle build를 수행했는데, 다음과 같이 background task가 멈추는 상황이 발생했다.
2. 해결
다음과 같은 방법을 시도했으나 모두 실패했다.
- 계속 기다려보기
- 브랜치 바꿔서 빌드해보기
- IntelliJ Repair IDE 실행
- PC 재부팅
- IntelliJ 최신 버전으로 업그레이드
최후의 수단으로 로컬 터미널에서 직접 빌드해보니 "IDLE"이라는 메시지를 확인할 수 있었다.
뭔가 gradle 프로세스가 유휴상태에 빠진 것으로 보여서 공식 문서에 "gradle IDLE"이라고 검색해본 결과, gradle 대몬 프로세스가 문제인 것을 파악할 수 있었다. jps 명령어를 통해 대몬 프로세스의 PID를 찾아내고, kill -9 PID 명령어를 통해 프로세스를 제거했다.
그리고 다시 IntelliJ에서 빌드를 실행시켰더니 정상적으로 빌드가 수행되는 것을 확인할 수 있었다.
참고로 gradle 대몬의 유휴 상태는 최대 3시간까지 유지될 수 있다고 한다. 공식문서에서는 대몬 프로세스를 멈추기 위해 gradle --stop 명령을 사용하라고 했는데, 내가 해봤을 땐 대몬 프로세스가 멈춰지지 않아서 그냥 죽이는 방법을 선택했다.
해결방법을 정리하자면 다음과 같다.
- 로컬 터미널에서 gradle task를 돌리고, IDLE 메시지가 나오는지 확인한다
- jps 명령어로 대몬 프로세스 PID를 확인한다
- kill -9 PID 명령어로 프로세스를 종료시키고, 다시 task를 수행한다
3. 참고
https://docs.gradle.org/current/userguide/gradle_daemon.html