✅ 에러 상황
React Native로 안드로이드 앱을 개발하는 중에 에뮬레이터에서 앱을 실행하려고 npm run android 명령어를 실행했을 때, 아래와 같은 오류 메시지가 나타났습니다
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':app:compileDebugJavaWithJavac'.
> Compilation failed; see the compiler error output for details.
* Try:
Run with --stacktrace option to get the stack trace.
Run with --info or --debug option to get more log output.
Run with --scan to get full insights.
* Get more help at https://help.gradle.org
이 오류는 Gradle 빌드 과정에서 발생하며, 안드로이드 앱을 에뮬레이터에서 실행하는데 실패했기 때문에 발생합니다.
앱이 정상적으로 빌드되지 않으니 에뮬레이터에서 앱을 실행할 수 없는 것입니다!
✅ 에러 원인
이 오류는 대부분 Gradle 빌드 캐시와 관련된 문제로 발생합니다.
특히 여러 라이브러리나 모듈을 사용하는 프로젝트에서는 빌드 파일이 엉키거나, 잘못된 설정으로 인해 빌드가 실패할 수 있습니다.
저 또한, Gradle 캐시 문제 때문이었습니다. 빌드 과정에서 사용되는 파일들이 손상되었거나, 오래된 파일이 남아 있어 발생하는 문제입니다.
✅ 해결 방법
이 문제를 해결하기 위해 Gradle 캐시를 정리하고 프로젝트를 다시 빌드하는 것이 효과적입니다. 이를 위해 다음과 같은 단계를 거쳐 문제를 해결할 수 있었습니다.
1. Gradle 캐시 정리 명령어 실행 (윈도우 환경)
gradlew.bat clean
프로젝트 폴더 안의 android 폴더 내에서 위 명령어를 실행합니다.
MacOS 환경이라면 ./gradlew clean 명령어로 해결할 수 있습니다.
2. 다시 프로젝트 폴더 안으로 이동해서 프로젝트 빌드 및 실행
npm run android
혹은
react-native run-android
Gradle 정리가 완료되면, 프로젝트를 다시 빌드하고 에뮬레이터에서 앱을 실행해보면 됩니다. 전 가상화 설정을 안해놔서 안드로이드 스튜디오에서 해당 안드로이드 프로젝트를 열어서 에뮬레이터를 켜두고 실행했습니다.
⭐ 성공 화면
💭 후기
생각보다 캐시 문제로 오류가 많이 발생할 수 있다는 것을 알게 되었다. 그리고 점차 윈도우 명령어에 익숙해져서 좋은 거 같다... 좋지 않은 거 같기도 하고...맥이 사고 싶기도 하고...그렇다. 아무튼 좋은 배움과 경험이었다.