Android Studio - Failed to apply plugin [id 'com.android.application']
AndroidAndroid Gradle-PluginAndroid Problem Overview
I am working on an app. In my app there is no error in code but when I try to run my project it gives following errors.
> Error:(1, 1) A problem occurred evaluating project ':app'. > > Failed to apply plugin [id 'com.android.application'] > > Could not create plugin of type 'AppPlugin'.
I try this also https://stackoverflow.com/questions/20811514/gradle-is-issuing-an-error-could-not-create-plugin-of-type-appplugin
and this also https://stackoverflow.com/questions/16649668/gradle-errors-in-android-studio
Following is my build.gradle file
apply plugin: 'com.android.application'
apply plugin: 'com.google.gms.google-services'
android {
compileSdkVersion 23
buildToolsVersion "21.1.2"
defaultConfig {
applicationId "com.praval.healthfreak"
minSdkVersion 15
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.2.1'
compile 'com.google.android.gms:play-services:8.3.0'
compile 'de.hdodenhof:circleimageview:1.3.0'
compile 'com.android.support:design:23.2.1'
compile files('libs/YouTubeAndroidPlayerApi.jar')
}
Android Solutions
Solution 1 - Android
Updated June 24, 2020
You need to update to the latest gradle
version to solve this issue.
Please make sure you are on the latest Android Studio
and then update your project level build.gradle
by updating this dependency
buildscript {
repositories {
google()
}
dependencies {
classpath 'com.android.tools.build:gradle:4.0.0'
}
}
It might show a popup asking your permission to update gradle
, please update and it will download the latest distribution automatically and the issue will be resolved.
Or else you can
Get Latest Gradle 5.6.4 from here and Add it manually
If you don't want to download it manually:
Open YourProject > gradle > wrapper > gradle-wrapper.properties
and replace
distributionUrl=https\://services.gradle.org/distributions/gradle-version-number-all.zip
With
distributionUrl=https\://services.gradle.org/distributions/gradle-6.1.1-all.zip
Rebuild the project or just run gradle sync again.
Solution 2 - Android
I faced the same issue in Android Studio version 3.5.3. This is how i fixed it.
I updated the dependecy com.android.tools.build:gradle in my project level build.gradle file from a lower version to 3.5.3 as below.
classpath 'com.android.tools.build:gradle:3.5.3'
I then went ahead and edited the value of distributionUrl in gradle-wrapper.properties file as below. This file is in the directory /gradle/wrapper/ from the root of your project folder.
distributionUrl=https\://services.gradle.org/distributions/gradle-5.4.1-all.zip
Solution 3 - Android
I found the simplest answer to this.
Just go gradle.properties file and change the enableUnitTestBinaryResources from true to false
android.enableUnitTestBinaryResources=false
The snapshot is shown below
Solution 4 - Android
Delete gradle cache files.
It can be in path like
C:\Users\username\.gradle\caches
for Windows users.
For UNIX based operating systems it will be
~/.gradle/caches
.
Solution 5 - Android
Feb 25th 2021:
For me, after over 8 hours of trials and errors, it was the re-ordering of the repositories
sources in the project-level build.gradle
file that solved the issue for me. So, instead of:
buildscript {
...
repositories {
google()
mavenCentral()
maven { url "https://plugins.gradle.org/m2/" }
}
...
}
I moved google()
to the bottom:
buildscript {
...
repositories {
mavenCentral()
maven { url "https://plugins.gradle.org/m2/" }
google()
}
...
}
Of course, be sure to update the gradle android plugin and the matching gradle-wrapper distribution versions too.
Solution 6 - Android
Just go to the gradle.properties
file and change enableUnitTestBinaryResources
from true
to false
android.enableUnitTestBinaryResources=false
Solution 7 - Android
i fixed it by upgrade to gradle-5.6.4-all.zip
in project\gradle\wrapper\gradle-wrapper.properties
#Wed Mar 11 15:20:29 WAT 2020
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.4-all.zip
Solution 8 - Android
Open the project on Android Studio and let it solve the problems for you
It immediately shows at the left bottom:
Then click that link, and it will fix the right files for you.
This ended up fixing the Gradle version as mentioned at: https://stackoverflow.com/a/37091489/895245 but it also fixed further errors, so it is the easiest thing to do.
Tested on https://github.com/googlesamples/android-vulkan-tutorials/tree/7ba478ac2e0d9006c9e2e261446003a4449b8aa3/tutorial05_triangle , Android Studio 2.3, Ubuntu 14.04.
Solution 9 - Android
Solved it by setting gradle version 3.2.1
buildscript {
dependencies {
classpath 'com.android.tools.build:gradle:3.2.1'
}
In Project level Gradle
Solution 10 - Android
you just need to change your project.gradle file. And sync your Gradle.
dependencies {
classpath 'com.android.tools.build:gradle:2.2.2'
}
Solution 11 - Android
When I had this problem was beacuse my directory had non ASCII characteres. Try changing it
Solution 12 - Android
First update the gradle to the latest version, if the issue still persists (in my case it did) then do the below- go to gradle.properties file and comment the line android.enableUnitTestBinaryResources=true
click on sync now.
it should solve the issue.
Solution 13 - Android
Solution 14 - Android
As in Accepted post, the problem solved with updating gradle to 4.4.1.
- Get Latest Gradle 4.4.1 from here
- Extract and put it in "C:\Program Files\Android\Android Studio\gradle"
- Then from android studio go to
"File -> Settings -> Build, Excecution, Deployment -> Gradle", from Project-level settings: Select Use local gradle Distribution and give the above
address(folder with name "gradle-4.4.1" in "C:\Program Files\ ...") - Then make project.
My Problem solved this way.
Solution 15 - Android
In my case, if your version of build tools in the build.gradle file in the root folder like : > classpath 'com.android.tools.build:gradle:3.x.x' <--- version of tools
is not supported by the Gradle installed in your project, you can check the build tools/plugin supported versions here, and make sure that the version installed in your project is supported by that version of Gradle.
You don't need to upgrade Gradle, you just check if it supports the plugin installed in your project or not.
Solution 16 - Android
delete C:\Users\username\.gradle\caches
folder.
Solution 17 - Android
My problem was I had czech characters (č,ú,ů,á,ó) in the project folder path.
Solution 18 - Android
I had the same issue and this is what I did and I was able to solve my issue:
-
I'm working with ShimmerAndroidAPI ( this library ) with Android Studio 3.6.1.
-
This worked well before I upgrade the Gradle and Android Studio to a new version using pop up upgrade suggestions appeared in android studio.
-
I followed the below steps as mentioned in this answer and I was able to make the project work.The steps I followed are as below.
-
Gradle file was updated from classpath 'com.android.tools.build:gradle:3.6.1' to
classpath 'com.android.tools.build:gradle:3.1.3'
-
Then distribution URL in gradle-wrapper.properties file was updated from distributionUrl=https://services.gradle.org/distributions/gradle-5.6.4-all.zip to
distributionUrl=https://services.gradle.org/distributions/gradle-5.4.1-all.zip
-
Gradle was then synched.
Solution 19 - Android
Whenever you update your Gradle files do not forget to check the compatible Gradle wrapper distibutionUrl
, in your case it happened because of the same.
distributionUrl=https://services.gradle.org/distributions/gradle-5.6.4-all.zip
Solution 20 - Android
Inside my project there is a .gradle
folder which had cached the previous gradle version I was using (5.4.1) and gradle kept using that instead of my newly downloaded one (5.6.4).
Simply:
- Close Android Studio
- Delete the older gradle version folders from your project.
- Restart Android Studio. Everything should be working correctly
In case this didn't work you can also try the following:
- Delete all versions in project .gradle folder so only the new one is redownloaded by AS when reopening the IDE.
- Check your project settings for gradle build version and make sure it is set to the latest one.
- Check that other modules aren't using older versions of the gradle build. You can search for this using project search (Ctrl+Shift+F) for
"distributionUrl"
and making sure that all modules have the latest version. - Delete
.gradle/caches
under your root gradle folder, usuallyC://Users/{you}/.gradle
- try
gradle build --stacktrace
,--info
,--scan
or--debug
in your AS terminal to get help and more info to debug your problem.
Solution 21 - Android
In my case delete your gradle file and then again import your file again it will work
Solution 22 - Android
- flutter clean
- flutter run --debug
- flutter build apk --release
the debug will create the build gradle and building apk will work fine
Solution 23 - Android
As of Android Gradle version above 7.0.0, Remove android.enableUnitTestBinaryResources
from gradle.properties file
Solution 24 - Android
One of the causes of the following error could be that exists an incompatibility with the configured version of the JVM in the project regarding the JDK location.
Error:
org.gradle.api.plugins.InvalidPluginException: An exception occurred applying plugin request [id: 'com.android.application']
Caused by: java.lang.NoSuchMethodException: java.lang.invoke.MethodHandles.privateLookupIn(java.lang.Class, java.lang.invoke.MethodHandles$Lookup)
Caused by: java.util.concurrent.ExecutionException: java.lang.NoSuchMethodException: java.lang.invoke.MethodHandles.privateLookupIn(java.lang.Class, java.lang.invoke.MethodHandles$Lookup)
Caused by: java.lang.NoSuchMethodException: java.lang.invoke.MethodHandles.privateLookupIn(java.lang.Class, java.lang.invoke.MethodHandles$Lookup)
Workaround:
Note: For JVM version in compileOptions{}
and kotlinOptions{}
- For JVM version:
JavaVersion.VERSION_1_8
- Use JDK Location:
/java-1.8.0-openjdk-amd64
- For JVM version:
JavaVersion.VERSION_11
- Use JDK Location:
/java-1.11.0-openjdk-amd64
Solution 25 - Android
Try this simple and quick solution. Invalidating cache solved my problem. Just go to File>Invalidate Cache /Restart.
Solution 26 - Android
non of above solution not worked for me but this is worked for me
just add in gradle.properties
this line in
android.overridePathCheck=true
for more info : https://www.programmersought.com/article/59853994468/
Solution 27 - Android
[Error] https://i.stack.imgur.com/f4wtI.png
Hello, I am Dipak, I faced this issue because I have downloaded and built a project on my PC, and it is on old java version 1.8, so when project building it will ask me to change the java version, and I have accepted that.
Here is the Solution, As you see my project need a java 11 version to build Gradle so,
- GoTo File -> Settings
- Build,Execution and Deployment -> Build Tools -> Gradle
- Change java version, Apply and click Ok.
- Sync build.gradle and run the project.
[Solution] https://i.stack.imgur.com/BFVZL.png
Solution 28 - Android
I am facing same issue. But I am able to run app from Android Studio
- First, in a terminal/command-prompt, open Metro-Bundler, by running command:
npm start
from project folder (Ex: D:\AwesomeProject>npm start) - Then in Android Studio, open ~/ProjectFolder/android (Ex: D:\AwesomeProject\android), and click Play icon (or press Shift+F10 for windows).
Note: This worked on Emulator only.
Solution 29 - Android
Android Gradle Plugin 7 requires Java 11. use short key Ctr+Alt+Shift+S or Go to File > Project Structure and change JDK location to Embedded JDK.
Solution 30 - Android
First of all, before trying the most complicated things you should make the step easier, in my case this bug just happened on my way until the project contained 'spaces' for example:
Replace:
C://Users/Silva Neto/OneDrive/Work space/project
With:
C://Users/SilvaNeto/OneDrive/Workspace/project
Notice that we replaced spaces with camelCase
but you can choose any naming scheme you like, and hopefully this could solve your issue.
I hope this will help.
Solution 31 - Android
Add the following to the top of your app/build.gradle
file
apply plugin: 'com.onesignal.androidsdk.onesignal-gradle-plugin'
Solution 32 - Android
In my case I'm using gradle version 7.0.3. It needed to add kotlin("android")
in build.gradle.kts
:
plugins {
id("com.android.application")
kotlin("android") //<---------- add this
}
Then you had to use JDK version 11 (download here) and add to android studio settings -> gradle and sync project