본문 바로가기

Android

Execution failed for task ':app:compileDebugKotlin' 에러 해결

코틀린 앱 디버그 빌드 시 생기는 컴파일 에러
어떻게 해결할까?

 

 

안녕하세요, 앱개발지식나눔입니다.

오늘은 안드로이드 앱 제작 시 플러터, 코틀린에서 나오는 빌드 에러를 해결하는 방법을 알아보겠습니다.

 

제가 나왔던 에러는..

 

 

Launching lib/main.dart on SM G986N in debug mode...
Running Gradle task 'assembleDebug'...
e: /Users/abcde/defgh/frontend/ldkjs/android/app/src/main/kotlin/com/example/ldkjs/MainActivity.kt: (5, 7): Redeclaration: MainActivity
e: /Users/abcde/defgh/frontend/ldkjs/android/app/src/main/kotlin/kr/dif/ldkjs/MainActivity.kt: (5, 7): Redeclaration: MainActivity

FAILURE: Build completed with 2 failures.

1: Task failed with an exception.
-----------
* What went wrong:
Execution failed for task ':app:compileDebugKotlin'.
> A failure occurred while executing org.jetbrains.kotlin.compilerRunner.GradleCompilerRunnerWithWorkers$GradleKotlinCompilerWorkAction
   > Compilation error. See log for more 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.
==============================================================================

2: Task failed with an exception.
-----------
* What went wrong:
java.lang.StackOverflowError (no error message)

* 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

BUILD FAILED in 1m 12s
Exception: Gradle task assembleDebug failed with exit code 1

 

 

였습니다. 여기서 잘 보면 'Redeclaration: MainActivity'라는 문제가 있다고 말합니다. 이 말은 MainActivity가 중복 선언되어있다는 의미인데요. 

 

android -> app -> src -> main -> kotlin 디렉토리로 이동합니다. 

 

MainActivity 디렉토리 중복

위 사진을 잘 보시면 'com/example/0000/MainActivity'와 'kr/0000/0000/MainActivity가 있는 것을 확인할 수 있습니다. 여기서 'com'에 해당하는 폴더를 삭제합니다.

 

com 폴더 삭제 후 디렉토리

위와 같은 폴더 구성을 이룬 후 빌드하면 성공적으로 앱이 실행됩니다.

이상 앱개발지식나눔이었습니다.