Android 스튜디오 빌드 시스템은 Gradle을 기반으로 하며 Android Gradle 플러그인에는 Android 앱을 빌드하는 데 사용하는 몇 가지 추가 기능이 있습니다. Android 플러그인은 일반적으로 Android 스튜디오와 완전히 동기화되어 업데이트되지만, 나머지 Gradle 시스템과 함께 Android 스튜디오로부터 독립적으로 실행되고 별도로 업데이트될 수도 있습니다.
이 페이지에서는 Gradle 도구를 업데이트하는 방법과 최근 업데이트 내용을 설명합니다. 이전 Android Gradle 플러그인 버전의 출시 노트는 이전 출시 노트를 참고하세요.
Android Gradle 플러그인의 예정된 브레이킹 체인지를 개략적으로 알아보려면 Android Gradle 플러그인 로드맵을 참고하세요.
Gradle을 사용하여 Android 빌드를 구성하는 방법에 관한 자세한 내용은 다음 페이지를 참고하세요.
Gradle 빌드 시스템에 관한 자세한 내용은 Gradle 사용자 가이드를 참고하세요.
Android Gradle 플러그인 업데이트
Android 스튜디오를 업데이트하면 Android Gradle 플러그인을 사용 가능한 최신 버전으로 자동 업데이트하라는 메시지가 표시될 수 있습니다. 업데이트를 수락하거나 프로젝트의 빌드 요구사항에 따라 버전을 수동으로 지정할 수 있습니다.
Android 스튜디오의 File > Project Structure > Project 메뉴 또는 최상위 build.gradle
파일에서 플러그인 버전을 지정할 수 있습니다. 플러그인 버전은 Android 스튜디오 프로젝트에 빌드된 모든 모듈에 적용됩니다. 다음 예는 build.gradle
파일에서 플러그인을 버전 7.4.1로 설정합니다.
Groovy
plugins { id 'com.android.application' version '7.4.1' apply false id 'com.android.library' version '7.4.1' apply false id 'org.jetbrains.kotlin.android' version '1.5.31' apply false }
Kotlin
plugins { id("com.android.application") version "7.4.1" apply false id("com.android.library") version "7.4.1" apply false id("org.jetbrains.kotlin.android") version "1.5.31" apply false }
주의: 버전 번호에 동적 종속 항목을 사용해서는 안 됩니다(예: 'com.android.tools.build:gradle:2.+'
). 이 기능을 사용하면 예상하지 못한 버전 업데이트가 발생할 수 있고 버전 차이를 해결하기 어려울 수 있습니다.
지정된 플러그인 버전을 다운로드하지 않은 경우, 다음에 프로젝트를 빌드할 때 또는 Android 스튜디오 메뉴 바에서 File > Sync Project with Gradle Files를 클릭하면 Gradle에서 지정된 버전의 플러그인을 다운로드합니다.
Gradle 업데이트
Android 스튜디오를 업데이트하면 Gradle 또한 사용 가능한 최신 버전으로 업데이트하라는 메시지가 표시될 수 있습니다. 업데이트를 수락하거나 프로젝트의 빌드 요구사항에 따라 버전을 수동으로 지정할 수 있습니다.
다음 표는 각 버전의 Android Gradle 플러그인에 필요한 Gradle 버전을 보여줍니다. 최상의 성능을 위해서는 Gradle과 플러그인을 가능한 최신 버전으로 사용해야 합니다.
플러그인 버전 | 필요한 최소 Gradle 버전 |
---|---|
8.1 | 8.0 |
8.0 | 8.0 |
7.4 | 7.5 |
7.3 | 7.4 |
7.2 | 7.3.3 |
7.1 | 7.2 |
7.0 | 7.0 |
4.2.0+ | 6.7.1 |
이전 버전
플러그인 버전 | 필요한 Gradle 버전 |
---|---|
4.1.0+ | 6.5+ |
4.0.0+ | 6.1.1+ |
3.6.0~3.6.4 | 5.6.4+ |
3.5.0~3.5.4 | 5.4.1+ |
3.4.0~3.4.3 | 5.1.1+ |
3.3.0~3.3.3 | 4.10.1+ |
3.2.0~3.2.1 | 4.6+ |
3.1.0+ | 4.4+ |
3.0.0+ | 4.1+ |
2.3.0+ | 3.3+ |
2.1.3~2.2.3 | 2.14.1~3.5 |
2.0.0~2.1.2 | 2.10~2.13 |
1.5.0 | 2.2.1~2.13 |
1.2.0~1.3.1 | 2.2.1~2.9 |
1.0.0~1.1.3 | 2.2.1~2.3 |
Android 스튜디오의 File > Project Structure > Project 메뉴에서 Gradle 버전을 지정하거나 명령줄을 사용하여 Gradle 버전을 업데이트할 수 있습니다.
선호되는 방법은 Gradle Wrapper 명령줄 도구를 사용하여 gradlew
스크립트를 업데이트하는 것입니다. 다음 예는 Gradle Wrapper를 사용하여 Gradle 버전을 7.5.1로 설정합니다.
Gradle과 Gradle Wrapper 자체를 모두 업그레이드하려면 이 명령어를 두 번 실행해야 합니다(자세한 내용은 Gradle Wrapper 업그레이드 참고).
gradle wrapper --gradle-version 7.5.1
그러나 AGP를 업데이트했는데 더 이상 현재 Gradle 버전과 호환되지 않는 등의 일부 경우에는 실패할 수 있습니다. 이 경우 gradle/wrapper/gradle-wrapper.properties
파일에서 Gradle 배포 참조를 수정해야 합니다. 다음 예는 gradle-wrapper.properties
파일에서 Gradle 버전을 7.5.1로 설정합니다.
...
distributionUrl = https\://services.gradle.org/distributions/gradle-7.5.1-bin.zip
...
Android Gradle 플러그인과 Android 스튜디오의 호환성
Android 스튜디오 빌드 시스템은 Gradle을 기반으로 하며 Android Gradle 플러그인에는 Android 앱을 빌드하는 데 사용하는 몇 가지 추가 기능이 있습니다. 다음 표에는 각 버전의 Android 스튜디오에 필요한 Android Gradle 플러그인 버전이 나열되어 있습니다.
Android 스튜디오 버전 | 필요한 플러그인 버전 |
---|---|
Giraffe | 2022.3.1 | 3.2~8.1 |
Flamingo | 2022.2.1 | 3.2~8.0 |
Electric Eel | 2022.1.1 | 3.2~7.4 |
Dolphin | 2021.3.1 | 3.2~7.3 |
Chipmunk | 2021.2.1 | 3.2~7.2 |
Bumblebee | 2021.1.1 | 3.2~7.1 |
Arctic Fox | 2020.3.1 | 3.1~7.0 |
Android Gradle 플러그인의 새로운 기능에 관한 정보는 Android Gradle 플러그인 출시 노트를 참고하세요.
버전 관리 변경사항(2020년 11월)
기본 Gradle 빌드 도구와 더 일치하도록 Android Gradle 플러그인(AGP)의 버전 번호 체계가 업데이트되었습니다.
주요 변경사항은 다음과 같습니다.
이제 AGP는 시맨틱 버전 관리를 사용하고, 메이저 버전에는 브레이킹 체인지가 타겟팅됩니다.
Gradle 메이저 버전에 맞춘 AGP 메이저 버전이 매년 1회 출시될 예정입니다.
AGP 4.2 이후 출시되는 버전은 7.0이며 Gradle 버전 7.x로 업그레이드해야 합니다. AGP의 모든 메이저 버전에는 기본 Gradle 도구의 메이저 버전 업그레이드가 필요합니다.
API는 1년 정도 미리 지원 중단될 예정이며 이를 대체하는 기능이 곧바로 제공됩니다. 지원 중단된 API는 약 1년 후, 다음 주요 업데이트가 있을 때 삭제될 예정입니다.
7.4.0(2022년 12월)
Android Gradle 플러그인 7.4.0은 다양한 새 기능과 개선사항이 포함된 메이저 버전입니다.
호환성
최소 버전 | 기본 버전 | 참고 | |
---|---|---|---|
Gradle | 7.5 | 7.5 | 자세한 내용은 Gradle 업데이트하기를 참고하세요. |
SDK 빌드 도구 | 30.0.3 | 30.0.3 | SDK 빌드 도구를 설치 또는 구성합니다. |
NDK | 해당 사항 없음 | 23.1.7779620 | 다른 버전의 NDK를 설치 또는 구성합니다. |
JDK | 11 | 11 | 자세한 내용은 JDK 버전 설정을 참고하세요. |
패치 출시
다음은 Android Gradle 플러그인 7.4를 위해 출시된 패치 목록입니다.
Android Gradle 플러그인 7.4.2(2023년 2월)
이번 소규모 업데이트는 다음과 같은 버그 수정을 포함합니다.
해결된 문제 | |
---|---|
DexingFileDependenciesTask.outputKeepRules는 디렉터리이나 OutputFile로 표시됨
|
|
7.4 베타 1로 업데이트할 때
AnnotationProcessorOptions.arguments are queried 오류 발생 |
|
테스트 변형의 매니페스트 자리표시자와 함께 processDebugUnitTestManifest가 실패함
|
Android Gradle 플러그인 7.4.1(2023년 2월)
이번 소규모 업데이트는 다음과 같은 버그 수정을 포함합니다.
해결된 문제 | |
---|---|
지원 중단 경고를 해결하고 Gradle 9.0을 준비하기 위해
destination 속성에서 outputLocation 속성으로 이전합니다. |
|
AGP 7.4.0-rc01이 '작업 '...'이(가) 완료되기 전에
map(provider(java.util.Set)) 의 매핑된 값을 쿼리하는 것은 지원되지 않음'으로 Variant API를 중단함 |
AGP 업그레이드 어시스턴트의 업그레이드 후 보고서 및 롤백 기능
이제 AGP 업그레이드 어시스턴트에 업그레이드 후 보고서가 포함됩니다. 이 보고서는 완료된 단계와 업그레이드 성공 여부를 설명합니다. 업그레이드 후 프로젝트를 빌드하거나 테스트하는 데 문제가 있는 경우 업그레이드 어시스턴트에서 실행한 변경사항을 되돌리는 작업도 포함됩니다.
동시에 실행되는 프로젝트 가져오기
이제 Gradle 7.4.2 이상 및 Android Gradle 플러그인 7.2.0 이상을 사용할 때 스튜디오 IDE에서 프로젝트를 동시에 가져옵니다. 특히, Android 스튜디오가 Gradle 동기화를 트리거하면 빌드에 포함된 프로젝트를 설명하는 정보가 동시에 만들어집니다. 이로 인해 특히 규모가 큰 프로젝트에서 동기화 프로세스의 속도가 빨라집니다. 벤치마크에 따르면 매우 큰 프로젝트(Gradle 하위 프로젝트 3,500개)의 Gradle 모델을 빌드하는 데 걸리는 시간이 10분에서 5분으로 50% 단축되었습니다.
Android Gradle 플러그인이 JVM 11 바이트 코드를 타겟팅함
Android Gradle 플러그인 7.4.0-alpha04부터 AGP가 JVM 11 바이트 코드와 함께 제공됩니다. 즉, AGP를 대상으로 컴파일하거나 맞춤 린트 검사를 작성하는 경우 JVM 11 바이트 코드 타겟팅을 시작해야 합니다. 이렇게 하는 방법 중 하나는 모듈 수준 build.gradle
파일에 다음을 포함하는 것입니다.
sourceCompatibility = "11"
targetCompatibility = "11"