안드로이드 앱 Java compiler has deprecated support for compiling with source/target compatibility version 8 경고 수정

앱 빌드 시 Java compiler has deprecated support for compiling with source/target compatibility version 8 경고가 출력됐다. 항상 경고 없는 깨끗한 빌드를 유지하는 것이 좋으므로 원인을 분석하고 경고 수정 방법을 공유한다.

원인

문제가 된 안드로이드 앱은 자바 코드로 작성되어 있다. 자바 버전 호환성과 관련된 문제로, 자바 8(Java 1.8) 사용이 deprecated(향후 지원 중단)될 것이라는 경고이다. 현재 사용 중인 JDK 버전 문제로 파악된다.

Java compiler has deprecated support for compiling with source/target compatibility version 8 Build 경고
 Java compiler has deprecated support for compiling with source/target compatibility version 8 Build 경고

해결

자바 버전 확인

콘솔에서 java -version 명령어로 현재 설치된 자바 버전을 확인한다. 아래 결과를 보면 20.0.1로 표시되어 자바 20 버전이 설치되어 있는 것을 확인할 수 있다. 만약 JDK 8이나 그 이전 버전이 설치되어 있다면 Oracle의 Java Download에서 JDK를 최신 버전으로 설치 한다.

콘솔에서 java -version 으로 현재 설치된 자바 버전을 확인
 콘솔에서 java -version 으로 현재 설치된 자바 버전을 확인

Gradle 설정에 Java 버전 반영

Gradle 설정에서 다음과 같이 sourceCompatibility, targetCompatibility 설정을 추가하고 다시 Sync한다.

android {   
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_20
        targetCompatibility JavaVersion.VERSION_20
    }
}

Kotlin 사용 중이라면 다음 코드도 추가한다.

android {   
    kotlinOptions {
        jvmTarget = "20"
    }
}

Rebuild

이제 다시 빌드하면 경고가 사라지고, 다시 깨끗한 빌드가 된 것을 확인할 수 있다.

앱을 다시 빌드하면 경고가 수정된 것을 확인할 수 있다
앱을 다시 빌드하면 경고가 수정된 것을 확인할 수 있다

Leave a Comment