I want to build a library with Jetpack Compose and publishing it using jitpack.io. Im using the canary version of android studio android studio canary version. I've build the project, push it to Github, made a release then I've put the link of my repo in jitpack.io to generate the lib dependency link "implementation 'com.github.user:compose-lib:Tag'" but something went wrong and I got this log error from jitpack :
Build starting...
Start: Tue Apr 27 14:25:17 UTC 2021 0c5235afbe25
Git:
0.9.0-0-g13dbaf9
commit 13dbaf941d2c59d8e70ed64b868488abb7f3f2e1
Author: username
Date: Tue Apr 27 14:29:45 2021 +0200
gradle plugin require Java 11 to run
Found Android manifest
Android SDK version: . Build tools: 30.0.3
Installing Build-tools 30.0.3
Found gradle
Gradle build script
Found gradle version: 7.0.
Using gradle wrapper
Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8 -Dhttps.protocols=TLSv1.2
Downloading https://services.gradle.org/distributions/gradle-7.0-rc-1-bin.zip
.
Unzipping /home/jitpack/.gradle/wrapper/dists/gradle-7.0-rc-1-bin/14lahl8r8vkgd4j5n81i3rsld/gradle-7.0-rc-1-bin.zip to /home/jitpack/.gradle/wrapper/dists/gradle-7.0-rc-1-bin/14lahl8r8vkgd4j5n81i3rsld
Set executable permissions for: /home/jitpack/.gradle/wrapper/dists/gradle-7.0-rc-1-bin/14lahl8r8vkgd4j5n81i3rsld/gradle-7.0-rc-1/bin/gradle
Welcome to Gradle 7.0-rc-1!
Here are the highlights of this release:
- File system watching enabled by default
- Support for running with and building Java 16 projects
- Native support for Apple Silicon processors
- Dependency catalog feature preview
For more details see https://docs.gradle.org/7.0-rc-1/release-notes.html
------------------------------------------------------------
Gradle 7.0-rc-1
------------------------------------------------------------
Build time: 2021-03-23 01:02:30 UTC
Revision: f5bf7ade373b74058e49f07749083b4c3075549a
Kotlin: 1.4.31
Groovy: 3.0.7
Ant: Apache Ant(TM) version 1.10.9 compiled on September 27 2020
JVM: 1.8.0_252 (Private Build 25.252-b09)
OS: Linux 4.14.63-xxxx-std-ipv6-64 amd64
0m3.102s
Getting tasks: ./gradlew tasks --all
Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8 -Dhttps.protocols=TLSv1.2
FAILURE: Build failed with an exception.
* Where:
Build file '/home/jitpack/build/mylib/build.gradle' line: 2
* What went wrong:
An exception occurred applying plugin request [id: 'com.android.library']
> Failed to apply plugin 'com.android.internal.library'.
> 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`.
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
* Get more help at https://help.gradle.org
BUILD FAILED in 24s
Tasks:
WARNING:
Gradle 'install' task not found. Please add the 'maven' or 'android-maven' plugin.
See the documentation and examples: https://jitpack.io/docs/
Adding maven plugin
Found android library build file in mylib
Running: ./gradlew clean -Pgroup=com.github.user -Pversion=0.9.0 install
Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8 -Dhttps.protocols=TLSv1.2
> Configure project :
Gradle version Gradle 7.0-rc-1
FAILURE: Build failed with an exception.
* Where:
Build file '/home/jitpack/build/mylib/build.gradle' line: 2
* What went wrong:
An exception occurred applying plugin request [id: 'com.android.library']
> Failed to apply plugin 'com.android.internal.library'.
> 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`.
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.
* Get more help at https://help.gradle.org
Deprecated Gradle features were used in this build, making it incompatible with Gradle 8.0.
Use '--warning-mode all' to show the individual deprecation warnings.
See https://docs.gradle.org/7.0-rc-1/userguide/command_line_interface.html#sec:command_line_warnings
BUILD FAILED in 1s
Build tool exit code: 0
Looking for artifacts...
Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8 -Dhttps.protocols=TLSv1.2
Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8 -Dhttps.protocols=TLSv1.2
Looking for pom.xml in build directory and ~/.m2
2021-04-27T14:25:58.25891409Z
Exit code: 0
ERROR: No build artifacts found
And here my build.gradle file of my library:
plugins {
id 'com.android.library'
id 'kotlin-android'
}
android {
compileSdk 30
buildToolsVersion "30.0.3"
defaultConfig {
minSdk 21
targetSdk 30
versionCode 1
versionName "1.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
consumerProguardFiles "consumer-rules.pro"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_11
targetCompatibility JavaVersion.VERSION_11
}
kotlinOptions {
jvmTarget = '11'
}
buildFeatures {
compose true
}
composeOptions {
kotlinCompilerVersion "1.4.32"
kotlinCompilerExtensionVersion "1.0.0-beta05"
}
}
java {
toolchain {
languageVersion.set(JavaLanguageVersion.of(11))
}
}
tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).configureEach {
kotlinOptions {
jvmTarget = "11"
}
}
dependencies {
implementation 'androidx.core:core-ktx:1.3.2'
implementation 'androidx.appcompat:appcompat:1.2.0'
implementation 'com.google.android.material:material:1.3.0'
implementation "androidx.compose.ui:ui:$compose_version"
implementation "androidx.compose.material:material:$compose_version"
implementation "androidx.compose.ui:ui-tooling:$compose_version"
implementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.3.1'
implementation 'androidx.activity:activity-compose:1.3.0-alpha07'
testImplementation 'junit:junit:4.+'
androidTestImplementation 'androidx.test.ext:junit:1.1.2'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'
androidTestImplementation "androidx.compose.ui:ui-test-junit4:$compose_version"
}
I changed the java version from 1.8 to 11 but still doesn't work.
here my android studio config: Gradle JDK
File > project structure > SDK Location: SDK Location
Any help would be appreciated!
[EDIT] Problem Solved by configuring Jitpack to run on Java 11. I added jitpack.yml file which contains
jdk:
- openjdk11
You can refer to this article for more details.
Is the path to JDK correct? You could check inside File > project structure > sdk location. please verify if this location is based on jdk 11.