gradle을 사용한 프로젝트에서 테스트 실행 시 빌드가 실패하며 아래와 같은 예외 발생
오류: 기본 클래스 worker.org.gradle.process.internal.worker.GradleWorkerMain을(를) 찾거나 로드할 수 없습니다.
원인: java.lang.ClassNotFoundException: worker.org.gradle.process.internal.worker.GradleWorkerMain
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':test'.
> Process 'Gradle Test Executor 12' finished with non-zero exit value 1
./gradlew
성공./gradlew test
실패gradle-wrapper.jar
등 파일, 폴더 제대로 있음gradle 데몬 다시 시작
./gradlew --stop
갑자기 뭐가 궁금해서 gradle을 깨끗하게 초기화하던 중 ./gradlew build --refresh-dependencies
을 사용했고, 약간 느리길래 끄고 명령어를 한 번 더 썼더니 아래와 같은 메세지가 떴었음
1 busy Daemon could not be reused, ...
이 땐 그냥 지나쳤지만 내가 cmd+z
로 꺼서 gradle daemon을 백그라운드에 멈춰놓고 다른 걸 해서 꼬인 것 같다
stop 이후 ./gradlew --status
로 확인해 보니 2개의 데몬이 있었는데, 왜 데몬이 2개이고 난 stop 명령어를 사용했는데 왜 데몬이 새로 실행됐을까?
-> 문서를 읽어보니 idle 상태나 compatible한 데몬이 없으면 새로운 gradle 데몬을 시작한다고 함
JDK가 설치되어 있는 경우jps
명령어를 실행하면 데몬이 중지되었는지 쉽게 확인할 수 있다고 함
GradleDaemon
이 현재는 실행 중인 것을 확인할 수 있음
다음에도 이런 증상이 나타나면 어떤 상태인지 확인해봐야겠다