본문 바로가기
[Error Handling]

😡 [IntelliJ] finished with non-zero exit value 1 에러 해결과 원인 찾아보기

by 팡펑퐁 2023. 5. 17.
728x90

🚨 Error :

  •  Spring Boot + Gradle 프로젝트를 생성해 IntelliJ에서 실행했는데 위와 같은 에러를 만났다. 0이 아닌 value 1로 종료되었다는 뜻 같은데 특별한 작업을 하지 않았는데 발생한 에러라서 당황스러웠다. 


🤓 원인 :

  •  구글링을 해보니 의외로 쉽게 만나는 에러였고 해결하는 방법도 거의 정해져 있는 듯했다. 우선 해결이 최우선이니 해결하는 방법부터 소개하겠다.

 


🚒 해결 :

1. IntelliJ IDEA - Settings...에 들어간다.

 

2. Build, Excution, Deployment - Gradle에 들어간다.

 

3. 여기서 Build and run using과 Run tests using을 Gradle에서 IntelliJ로 변경한다.

4. Gradle - Gradle JVM에 사용 중인 JDK로 변경한다.

 

5. 그리고 다시 실행하면 해결이 된다.

 


🤔 의문점 :

 문제는 왜 이러한 에러가 발생한지 아무도 적어놓지 않았다는 것이다. 아마 모르는 거겠지.. 다들 일단 해결됐으니 넘겼을 것이다. 나 역시 이 에러를 예전에 만나본 경험이 있다. 그때도 위의 방식으로 해결한 채 넘어갔다. 그리고 다시 똑같은 에러를 만났다. 그래서 이번에는 왜 이 에러가 발생했고 왜 위의 방식으로 해결되는지 알아보려고 했다. 그러나...,

 

도저히 정확한 원인을 찾을 수가 없어 chatGPT의 답변을 요약하여 남긴다.

 

일단 프로그램 또는 테스트가 0이 아닌 다른 종료 코드로 종료되었을 때 발생하는 에러이다. 이 에러는 코드, 종속성, 프로젝트 구성 등 여러 가지 이유로 인해 발생한다.

 

 여러 원인 중 가장 유력한 것은 Gradle 빌드 시스템을 사용할 때 빌드 및 실행 구성에 문제가 있다는 것이다. 이를 IntelliJ의 자체 빌드 및 실행 시스템으로 해결한 것으로 보인다.

 

빌드 및 실행 시스템을 Gradle에서 IntelliJ로 변경하면 에러 해결에 도움이 되는 몇 가지 이점을 얻을 수 있다.

 

종속성 관리

  • IntelliJ의 빌드 시스템에는 종속성 관리를 위한 자체 메커니즘이 있다.

빌드 구성

  • IntelliJ의 빌드 시스템으로 전환하면 에러의 원인이 될 수 있는 클래스, 빌드 경로 또는 컴파일 옵션과 같은 특정 빌드 설정을 자동으로 처리할 수 있다.

테스트 실행

  • 테스트 클래스 검색, 테스트 실행기 구성, 테스트 환경 설정을 다르게 처리하여 테스트 실행 중에 에러를 발생시키는 문제를 잠재적으로 해결할 수 있다.

IDE 통합

  • IntelliJ의 빌드 시스템은 IDE 자체와 긴밀하게 통합되기 때문에 코드 분석, 검사 및 디버깅과 같은 빌드 시스템의 능력이 향상된다.
728x90