[android] Deprecated Gradle features were used in this build, making it incompatible with Gradle 5.0

I've got a gradle FAILURE:

..."Deprecated Gradle features were used in this build, making it incompatible with Gradle 5.0."

Case description:

  • Attached to the project codebase the next libs:

APP/build.gradle

    //(Required) Writing and executing Unit Tests on the JUnit Platform 
testImplementation "org.junit.jupiter:junit-jupiter-api:5.2.0"
testRuntimeOnly "org.junit.jupiter:junit-jupiter-engine:5.2.0"
    // (Optional) If you need "Parameterized Tests"
testImplementation "org.junit.jupiter:junit-jupiter-params:5.2.0"
    // (Optional) If you also have JUnit 4-based tests
testImplementation "junit:junit:4.12"
testRuntimeOnly "org.junit.vintage:junit-vintage-engine:5.2.0"

testImplementation "io.mockk:mockk:1.8.5"
  • Updated the gradle-wrapper.properties

    distributionUrl=https....gradle-4.4-all.zip to 4.7-all

  • after all of that gradle was built success

  • created the test calss

    @TestInstance(TestInstance.Lifecycle.PER_CLASS)
      class TestClass {
    
      @Test
      internal fun testName() {
        Assert.assertEquals(2, 1 + 1)
      }
    }
    
  • ran the test and got the FAILURE message. enter image description here

  • ran the Gradle build with a command line argument ./gradlew --warning-mode=all to see what exactly the deprecated features are. enter image description here

As a result I couldn't build the app and I've got that FAILURE: message.

This question is related to android unit-testing gradle kotlin junit5

The answer is


Run the Gradle build with a command line argument --warning-mode=all to see what exactly the deprecated features are.

It will give you a detailed description of found issues with links to the Gradle docs for instructions how to fix your build.

Adding --stacktrace to that, you will also be able to pinpoint where the warning comes from, if it's triggered by outdated code in one of the plugins and not your build script.


Try this one

cd android && ./gradlew clean && ./gradlew :app:bundleRelease

I was getting this error. Turns out it only happened when I completely cleaned the RN caches (quite elaborate process) and then created a release build.

If I cleaned the caches, created a debug build and then a release build, everything worked. Bit worrying but works.

Note: My clean command is...

rm -r android/build ; rm -r android/app/src/release/res ; rm -r android/app/build/intermediates ; watchman watch-del-all ; rm -rf $TMPDIR/react-* ; npm start -- --reset-cache


in my case i updated the build.gradle file and make the classpath to latest version from 3.5.2 to 3.6.3

dependencies {
        classpath("com.android.tools.build:gradle:3.6.3") 
    }

It work for me in this issue in a project of react-native:

Deprecated Gradle features were used in this build, making it incompatible with Gradle 7.0.

244 actionable tasks: 2 executed, 242 up-to-date D8: Cannot fit requested classes in a single dex file (# fields: 67296 > 65536) com.android.builder.dexing.DexArchiveMergerException: Error while merging dex archives: The number of method references in a .dex file cannot exceed 64K. Learn how to resolve this issue at https://developer.android.com/tools/building/multidex.html ....

I Did this:


Important - Answer work only for REACT-NATIVE VS CODE Terminal

In VisualStudio code, you have to run like below then that warning will be omitted.

react-native run-android warning-mode=all

If you run below then you will get the error in terminal When running react-native run-android --warning-mode all I get error: unknown option --warning-mode'


In my case adding multiDexEnabled true in Android/build/build.gradle file compiled the files.

I will look into removing this in the future, as in the documentation it says 'Before configuring your app to enable use of 64K or more method references, you should take steps to reduce the total number of references called by your app code, including methods defined by your app code or included libraries.'

defaultConfig {
  applicationId "com.peoplesenergyapp"
  minSdkVersion rootProject.ext.minSdkVersion
  targetSdkVersion rootProject.ext.targetSdkVersion
  versionCode 1
  versionName "1.0"
  multiDexEnabled true // <-add this 
}

Update your third party dependencies. for example I updated dependency from implementation 'com.github.ybq:Android-SpinKit:1.1.0' to implementation 'com.github.ybq:Android-SpinKit:1.2.0'. and in my case issue has been solved.


Set distributionUrl path in gradle-wrapper-properties files as :

distributionUrl=https://services.gradle.org/distributions/gradle-4.10.2-all.zip


The following solution helped me as I was also getting the same warning. In your project level gradle file, try to change the gradle version in classpath

classpath "com.android.tools.build:gradle:3.6.0" to
classpath "com.android.tools.build:gradle:4.0.1"

Solution for the issue: deprecated gradle features were used in this build making it incompatible with gradle 6.0. android studio This provided solution worked for me.

First change the classpath in dependencies of build.gradle of your project From: classpath 'com.android.tools.build:gradle:3.3.1' To: classpath 'com.android.tools.build:gradle:3.6.1'

Then make changes in the gradle-wrapper.properties file this file exists in the Project's gradle>wrapper folder From: distributionUrl=https\://services.gradle.org/distributions/gradle-5.4.1-all.zip To: distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.4-all.zip

Then Sync your gradle.


Finally decided to downgrade the junit 5 to junit 4 and rebuild the testing environment.


i'am using react-native and this works for me :

  1. in root of project cd android and gradlew clean
  2. open task manager in windows
  3. on tab 'Details' hit endtask on both java.exe proccess

long story short > Task :app:installDebug FAILED Fixed by kiling java.exe prossess


It was fixed this kind of error after migrate to AndroidX

  • Go to Refactor ---> Migrate to AndroidX

The process below worked in my case- First check Gradle Version:

cd android
./gradlew -v

In my case it was 6.5

Go to https://developer.android.com/studio/releases/gradle-plugin and you'll get the plugin version for your gradle version. For gradle version 6.5, the plugin version is 4.1.0

Then go to app/build.gradle and change classpath 'com.android.tools.build:gradle:<plugin_version>


On a SpringBoot project using IntelliJ and Gradle, I got the warning "Deprecated Gradle features were used in this build, making it incompatible with Gradle 5.0" when running my integration test. What solved the problem was: - Going to: File > Settings > Build, Execution, Deployment - Selecting for "Build and run using": Intellij IDEA (instead of "Gradle") - Same for "Run tests using" That did not explain why Gradle is displaying the warning, but that let me perform the test and progress in my work.


Uninstall the old app from the device/emulator. It worked for me


If you're using react-native then please try the below commands first before running your project:

  1. npm install --save-dev jetifier
  2. npx jetify

Now run your project again. Hope this will work.


it is due to incompatibility.

please upgrade classpath("com.android.tools.build:gradle:4.0.1") in build.gradle file under android folder.


Questions with android tag:

Under what circumstances can I call findViewById with an Options Menu / Action Bar item? How to implement a simple scenario the OO way My eclipse won't open, i download the bundle pack it keeps saying error log getting " (1) no such column: _id10 " error java doesn't run if structure inside of onclick listener Cannot retrieve string(s) from preferences (settings) strange error in my Animation Drawable how to put image in a bundle and pass it to another activity FragmentActivity to Fragment A failure occurred while executing com.android.build.gradle.internal.tasks Why am I seeing net::ERR_CLEARTEXT_NOT_PERMITTED errors after upgrading to Cordova Android 8? "Failed to install the following Android SDK packages as some licences have not been accepted" error Android Gradle 5.0 Update:Cause: org.jetbrains.plugins.gradle.tooling.util No Creators, like default construct, exist): cannot deserialize from Object value (no delegate- or property-based Creator WebView showing ERR_CLEARTEXT_NOT_PERMITTED although site is HTTPS WARNING: API 'variant.getJavaCompile()' is obsolete and has been replaced with 'variant.getJavaCompileProvider()' GoogleMaps API KEY for testing Can I use library that used android support with Androidx projects. How to allow all Network connection types HTTP and HTTPS in Android (9) Pie? Android Material and appcompat Manifest merger failed Deprecated Gradle features were used in this build, making it incompatible with Gradle 5.0 How to format DateTime in Flutter , How to get current time in flutter? How to change package name in flutter? Failed to resolve: com.android.support:appcompat-v7:28.0 What is AndroidX? Unable to resolve dependency for ':app@debug/compileClasspath': Could not resolve FirebaseInstanceIdService is deprecated installation app blocked by play protect Handling back button in Android Navigation Component Android design support library for API 28 (P) not working Failed to resolve: com.google.firebase:firebase-core:16.0.1 com.google.android.gms:play-services-measurement-base is being requested by various other libraries java.lang.NoClassDefFoundError:failed resolution of :Lorg/apache/http/ProtocolVersion Install Android App Bundle on device Conflict with dependency 'com.android.support:support-annotations' in project ':app'. Resolved versions for app (26.1.0) and test app (27.1.1) differ. How to develop Android app completely using python? Invoke-customs are only supported starting with android 0 --min-api 26 Flutter.io Android License Status Unknown How to open Android Device Monitor in latest Android Studio 3.1 Default interface methods are only supported starting with Android N How can I change the app display name build with Flutter? Error:(9, 5) error: resource android:attr/dialogCornerRadius not found error: resource android:attr/fontVariationSettings not found Flutter does not find android sdk Error - Android resource linking failed (AAPT2 27.0.3 Daemon #0) Error : Program type already present: android.support.design.widget.CoordinatorLayout$Behavior flutter run: No connected devices Cannot inline bytecode built with JVM target 1.8 into bytecode that is being built with JVM target 1.6 Still getting warning : Configuration 'compile' is obsolete and has been replaced with 'implementation' PANIC: Cannot find AVD system path. Please define ANDROID_SDK_ROOT (in windows 10)

Questions with unit-testing tag:

Deprecated Gradle features were used in this build, making it incompatible with Gradle 5.0 How to test the type of a thrown exception in Jest Unit Tests not discovered in Visual Studio 2017 Class Not Found: Empty Test Suite in IntelliJ Angular 2 Unit Tests: Cannot find name 'describe' Enzyme - How to access and set <input> value? Mocking HttpClient in unit tests Example of Mockito's argumentCaptor How to write unit testing for Angular / TypeScript for private methods with Jasmine Why is the Visual Studio 2015/2017/2019 Test Runner not discovering my xUnit v2 tests Does Visual Studio have code coverage for unit tests? No tests found for given includes Error, when running Parameterized Unit test in Android Studio Override default Spring-Boot application.properties settings in Junit Test Visual Studio 2015 or 2017 does not discover unit tests How to write a unit test for a Spring Boot Controller endpoint Mocking a function to raise an Exception to test an except block Java verify void method calls n times with Mockito Python mock multiple return values How to print to console in pytest? How do I mock a service that returns promise in AngularJS Jasmine unit test? Change default timeout for mocha How to test Spring Data repositories? Tests not running in Test Explorer How to properly assert that an exception gets raised in pytest? How are people unit testing with Entity Framework 6, should you bother? jasmine: Async callback was not invoked within timeout specified by jasmine.DEFAULT_TIMEOUT_INTERVAL How to run only one unit test class using Gradle Mockito verify order / sequence of method calls Using Spring MVC Test to unit test multipart POST request Why am I getting an Exception with the message "Invalid setup on a non-virtual (overridable in VB) member..."? How can I tell Moq to return a Task? Mocking static methods with Mockito How to spyOn a value property (rather than a method) with Jasmine Controlling execution order of unit tests in Visual Studio Exception : mockito wanted but not invoked, Actually there were zero interactions with this mock Mockito - difference between doReturn() and when() 'No JUnit tests found' in Eclipse Mock functions in Go Create a mocked list by mockito How to verify static void method has been called with power mockito Test method is inconclusive: Test wasn't run. Error? Using python's mock patch.object to change the return value of a method called within another method How to test that no exception is thrown? Code coverage with Mocha How can I create tests in Android Studio? Difference between @Mock and @InjectMocks Injecting @Autowired private field during testing Mocking python function based on input arguments Running a single test from unittest.TestCase via the command line Mockito: InvalidUseOfMatchersException

Questions with gradle tag:

Gradle - Move a folder from ABC to XYZ A failure occurred while executing com.android.build.gradle.internal.tasks Gradle: Could not determine java version from '11.0.2' Android Gradle 5.0 Update:Cause: org.jetbrains.plugins.gradle.tooling.util Deprecated Gradle features were used in this build, making it incompatible with Gradle 5.0 Failed to resolve: com.android.support:appcompat-v7:28.0 Failed to resolve: com.google.firebase:firebase-core:16.0.1 com.google.android.gms:play-services-measurement-base is being requested by various other libraries java.lang.NoClassDefFoundError:failed resolution of :Lorg/apache/http/ProtocolVersion Error - Android resource linking failed (AAPT2 27.0.3 Daemon #0) Still getting warning : Configuration 'compile' is obsolete and has been replaced with 'implementation' Execution failed for task ':app:compileDebugJavaWithJavac' Android Studio 3.1 Update Could not find tools.jar. Please check that C:\Program Files\Java\jre1.8.0_151 contains a valid JDK installation java.lang.RuntimeException: com.android.builder.dexing.DexArchiveMergerException: Unable to merge dex in Android Studio 3.0 "The specified Android SDK Build Tools version (26.0.0) is ignored..." Unable to resolve dependency for ':app@debug/compileClasspath': Could not resolve com.android.support:appcompat-v7:26.1.0 Failed to resolve: com.google.android.gms:play-services in IntelliJ Idea with gradle Failed to resolve: com.android.support:appcompat-v7:26.0.0 Setting up Gradle for api 26 (Android) What's the difference between implementation and compile in Gradle? More than one file was found with OS independent path 'META-INF/LICENSE' Android Studio 3.0 Flavor Dimension Issue Jersey stopped working with InjectionManagerFactory not found Could not find com.android.tools.build:gradle:3.0.0-alpha1 in circle ci Gradle - Could not target platform: 'Java SE 8' using tool chain: 'JDK 7 (1.7)' Error:Execution failed for task ':app:compileDebugKotlin'. > Compilation error. See log for more details Error:Failed to open zip file. Gradle's dependency cache may be corrupt Error:Cause: unable to find valid certification path to requested target gradlew command not found? error: package com.android.annotations does not exist You have not accepted the license agreements of the following SDK components How do I activate a Spring Boot profile when running from IntelliJ? Difference between using gradlew and gradle Gradle's dependency cache may be corrupt (this sometimes occurs after a network connection timeout.) Automatically accept all SDK licences Gradle Sync failed could not find constraint-layout:1.0.0-alpha2 Error:Conflict with dependency 'com.google.code.findbugs:jsr305' How to run bootRun with spring profile via gradle task The number of method references in a .dex file cannot exceed 64k API 17 How to set an environment variable from a Gradle build? Android- Error:Execution failed for task ':app:transformClassesWithDexForRelease' No matching client found for package name (Google Analytics) - multiple productFlavors & buildTypes configuring project ':app' failed to find Build Tools revision "Gradle Version 2.10 is required." Error Gradle version 2.2 is required. Current version is 2.10 Difference between clean, gradlew clean How to downgrade to older version of Gradle Error:Unknown host services.gradle.org. You may need to adjust the proxy settings in Gradle Gradle Error:Execution failed for task ':app:processDebugGoogleServices' failed to find target with hash string android-23

Questions with kotlin tag:

No Creators, like default construct, exist): cannot deserialize from Object value (no delegate- or property-based Creator How to allow all Network connection types HTTP and HTTPS in Android (9) Pie? Deprecated Gradle features were used in this build, making it incompatible with Gradle 5.0 Default interface methods are only supported starting with Android N Error : Program type already present: android.support.design.widget.CoordinatorLayout$Behavior Cannot inline bytecode built with JVM target 1.8 into bytecode that is being built with JVM target 1.6 startForeground fail after upgrade to Android 8.1 How to get current local date and time in Kotlin How to add an item to an ArrayList in Kotlin? HTTP Request in Kotlin How can I get a random number in Kotlin? Kotlin Android start new Activity Smart cast to 'Type' is impossible, because 'variable' is a mutable property that could have been changed by this time Android - How to achieve setOnClickListener in Kotlin? What's the Kotlin equivalent of Java's String[]? Val and Var in Kotlin Kotlin - How to correctly concatenate a String Android Room - simple select query - Cannot access database on the main thread How to make primary key as autoincrement for Room Persistence lib Kotlin: How to get and set a text to TextView in Android using Kotlin? Constants in Kotlin -- what's a recommended way to create them? Error:Execution failed for task ':app:compileDebugKotlin'. > Compilation error. See log for more details How to call a function after delay in Kotlin? Kotlin Error : Could not find org.jetbrains.kotlin:kotlin-stdlib-jre7:1.0.7 How to parse JSON in Kotlin? What is the equivalent of Java static methods in Kotlin? Kotlin's List missing "add", "remove", Map missing "put", etc? How to create empty constructor for data class in Kotlin Android How to check if a "lateinit" variable has been initialized? Sort collection by multiple fields in Kotlin Kotlin - Property initialization using "by lazy" vs. "lateinit" How to convert a Kotlin source file to a Java source file How do I initialize Kotlin's MutableList to empty MutableList? Error: Execution failed for task ':app:clean'. Unable to delete file Kotlin unresolved reference in IntelliJ How to initialize an array in Kotlin with values? Unfortunately MyApp has stopped. How can I solve this? Format in kotlin string templates Android Animation Alpha Opening Android Settings programmatically Kotlin Ternary Conditional Operator How to make an Android device vibrate? with different frequency? Android Get Current timestamp? how to access downloads folder in android? Place cursor at the end of text in EditText Alarm Manager Example How to launch an Activity from another Application in Android

Questions with junit5 tag:

Deprecated Gradle features were used in this build, making it incompatible with Gradle 5.0 Eclipse No tests found using JUnit 5 caused by NoClassDefFoundError for LauncherFactory JUnit 5: How to assert an exception is thrown? Difference between @Before, @BeforeClass, @BeforeEach and @BeforeAll