'Android Gradle plugin requires Java 11 to run. You are currently using Java 1.8. Error
I want to publish a library with Jitpackio. When I publish the library I get the following error;
"Failed to apply plugin 'com.android.internal.application'.
Android Gradle plugin requires Java 11 to run. You are currently using Java 1.8.
You can try some of the following options:
- changing the IDE settings.
- changing the JAVA_HOME environment variable.
- changing `org.gradle.java.home` in `gradle.properties`."
Gradle Version : 7.0.2
Can you help me?
Solution 1:[1]
The problem was that JitPack.io was running with JDK1.8 on its own. Add a jitpack.yml file to the project file with this content:
jdk:
- openjdk11
When I did that the problem went away.
Solution 2:[2]
According to AGP release note here
When using Android Gradle plugin 7.0 to build your app, JDK 11 is now required to run Gradle. Android Studio Arctic Fox bundles JDK 11 and configures Gradle to use it by default, which means that most Android Studio users do not need to make any configuration changes to their projects.
JDK 11 is required if you using AGP 7.0.
You can modify AS JDK version like below (Only effect run app build project in AS small hammer or run action)
if Android Studio Arctic Fox | 2020.3.1 you use .
For some one building android app with AGP 7.0 with command line
- Modify JAVA_HOME value path to JDK 11 (Which will effect all of project on environment)
- Declare "org.gradle.java.home = path to JDK 11" in special project gradle.properties file (Effect to only this project)
Solution 3:[3]
solution in reviewed in jitpack github page: here
as said : you should create a file in root of project named jitpack.yml contain
jdk:
-openjdk11
then change build.gradle file in library as :
apply plugin: 'com.android.library'
apply plugin:'maven-publish'
.
.
afterEvaluate {
publishing {
publications {
release(MavenPublication) {
from components.release
groupId = "ntk.android.base"
artifactId = 'baseActivity'
version = version
}
}
}
}
Solution 4:[4]
Create jitpack.yml in root project dir.
jdk:
- openjdk11
before_install:
- sdk install java 11.0.10-open
- sdk use java 11.0.10-open
It's working for me.
Solution 5:[5]
Only add jitpack.yml isn't working for me in gradle 7.0.2, but change gradle jdk works, according to this blog
Solution 6:[6]
If the answer by ending0421 didn't solve your problem,
first anyway change that Gradle JDK location to Embedded then you can directly edit the buid.gradle (Module) under compileOptions as show below and make sure that you have installed Java 11. You can get it from Oracle. 
As you can see here, you must change both the sourceCompatibility and targetCompatibility to JavaVersion.VERSION_11 and you can click on sync now or rebuild the project and make project.
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 | Joachim Sauer |
| Solution 2 | |
| Solution 3 | |
| Solution 4 | Michael Lee |
| Solution 5 | cy lee |
| Solution 6 |
