How to update Kotlin in Android Studio

Yusuf I.

The Problem

You can avoid unexpected issues by keeping the Kotlin versions in your project updated, especially when updating Gradle versions.

Each Kotlin version has a minimum and maximum supported Gradle version and using incompatible versions may cause errors such as:

BUILD FAILED in 8s [!] Your project requires a newer version of the Kotlin Gradle plugin. Find the latest version on https://kotlinlang.org/docs/gradle.html#plugin-and-versions, then update project/android/build.gradle: ext.kotlin_version = '<latest-version>' Exception: Gradle task assembleDebug failed with exit code 1

The Solution

When updating Kotlin to the latest version, update the Android Gradle plugin (AGP), Gradle, and the Java Development Kit (JDK) to avoid incompatibility issues.

First, open the project-level build.gradle file located in the root of your project and update the plugins block. The example below will update Kotlin to version 1.9.20:

plugins { id 'com.android.application' version '8.2.2' apply false id 'com.android.library' version '8.2.2' apply false id 'org.jetbrains.kotlin.android' version '1.9.20' apply false }

The lines containing com.android.application and com.android.library update the Android Gradle plugin.

Next, update Gradle by navigating to the gradle/gradle-wrapper.properties file and changing the version number in the distributionUrl. Here we’re using Gradle version 8.2:

distributionUrl=https\://services.gradle.org/distributions/gradle-8.2-bin.zip

To update the JDK to use Java 17, open the app/build.gradle file and update the following lines:

compileOptions { sourceCompatibility JavaVersion.VERSION_17 targetCompatibility JavaVersion.VERSION_17 } kotlinOptions { jvmTarget = '17' }

Finally, update the Gradle JDK in Android Studio Settings. Go to File (or Android Studio on macOS) > Settings > Build, Execution, Deployment > Build Tools > Gradle and change the “Gradle JDK” field to “17”.

Gradle JDK Settings

For more information about the Android build system, visit https://developer.android.com/build.

Loved by over 4 million developers and more than 90,000 organizations worldwide, Sentry provides code-level observability to many of the world’s best-known companies like Disney, Peloton, Cloudflare, Eventbrite, Slack, Supercell, and Rockstar Games. Each month we process billions of exceptions from the most popular products on the internet.

Share on Twitter
Bookmark this page
Ask a questionJoin the discussion

Related Answers

A better experience for your users. An easier life for your developers.

    TwitterGitHubDribbbleLinkedinDiscord
© 2024 • Sentry is a registered Trademark
of Functional Software, Inc.