mirror of
https://github.com/priyanshujain/sanderling.git
synced 2026-10-02 11:07:10 +00:00
fix(sdk-android): unblock publishToMavenLocal on JDK 21+ hosts (#9)
* build(sdk-android): bump AGP 8.11.0 → 8.13.0 Required by com.vanniktech.maven.publish 0.36.0, bumped in the following commit to pull a Dokka 2.x that handles JDK 21+ version strings. * build(sdk-android): migrate to vanniktech 0.36 + Dokka v2 javadoc Fixes the `javaDocReleaseGeneration` crash on JDK 21+ hosts (IllegalArgumentException: 25.0.2 in the bundled IntelliJ JavaVersion.parse). Root cause: AGP's JavaDocGenerationTask pulled an old Dokka whose vendored util-lang predated JDK 9+ version strings. Fixed upstream in Dokka 2.1.0 (Kotlin/dokka#4202). Changes in this commit: - Bump vanniktech-maven-publish 0.30.0 → 0.36.0, which drops Dokka v1 support and the SonatypeHost parameter (Central Portal is now the default). - Apply org.jetbrains.dokka and org.jetbrains.dokka-javadoc 2.2.0 so the javadoc jar is generated by Dokka 2.x directly, not AGP's bundled-Dokka path. - Switch AndroidSingleVariantLibrary to the explicit JavadocJar.Dokka("dokkaGeneratePublicationJavadoc") form; the old `publishJavadocJar = true` boolean now maps to plain javadoc, which still goes through AGP's broken path on Android source sets. - Enable V2Enabled in gradle.properties (required by 0.36+) and silence the transitional opt-in warning. Verified: `make release-android-local` on openjdk 25.0.2 produces aar, sources jar, javadoc jar, pom, and module; `./gradlew :sdk-android:testDebugUnitTest :sidecar:test` still pass.
This commit is contained in:
2 files changed
+14
-6
No files matched your search
@@ -4,6 +4,11 @@ org.gradle.caching=true
|
|||||||
kotlin.code.style=official
|
kotlin.code.style=official
|
||||||
android.useAndroidX=true
|
android.useAndroidX=true
|
||||||
|
|
||||||
|
# Required by vanniktech-maven-publish 0.36+ (Dokka v1 removed); also
|
||||||
|
# pulls Dokka 2.x, which fixes JavaVersion.parse on JDK 21+ hosts.
|
||||||
|
org.jetbrains.dokka.experimental.gradle.pluginMode=V2Enabled
|
||||||
|
org.jetbrains.dokka.experimental.gradle.pluginMode.noWarn=true
|
||||||
|
|
||||||
# Single source of truth at release time is the git tag (e.g. v0.1.0 → 0.1.0),
|
# Single source of truth at release time is the git tag (e.g. v0.1.0 → 0.1.0),
|
||||||
# forwarded via `-Puatu.version=...` or `ORG_GRADLE_PROJECT_uatu.version`.
|
# forwarded via `-Puatu.version=...` or `ORG_GRADLE_PROJECT_uatu.version`.
|
||||||
# The default below only applies to untagged local builds.
|
# The default below only applies to untagged local builds.
|
||||||
|
|||||||
@@ -1,10 +1,13 @@
|
|||||||
import com.vanniktech.maven.publish.AndroidSingleVariantLibrary
|
import com.vanniktech.maven.publish.AndroidSingleVariantLibrary
|
||||||
import com.vanniktech.maven.publish.SonatypeHost
|
import com.vanniktech.maven.publish.JavadocJar
|
||||||
|
import com.vanniktech.maven.publish.SourcesJar
|
||||||
|
|
||||||
plugins {
|
plugins {
|
||||||
id("com.android.library") version "8.11.0"
|
id("com.android.library") version "8.13.0"
|
||||||
kotlin("android") version "2.1.21"
|
kotlin("android") version "2.1.21"
|
||||||
id("com.vanniktech.maven.publish") version "0.30.0"
|
id("com.vanniktech.maven.publish") version "0.36.0"
|
||||||
|
id("org.jetbrains.dokka") version "2.2.0"
|
||||||
|
id("org.jetbrains.dokka-javadoc") version "2.2.0"
|
||||||
}
|
}
|
||||||
|
|
||||||
version = findProperty("uatu.version") as String? ?: "0.0.0-dev"
|
version = findProperty("uatu.version") as String? ?: "0.0.0-dev"
|
||||||
@@ -34,7 +37,7 @@ android {
|
|||||||
}
|
}
|
||||||
|
|
||||||
mavenPublishing {
|
mavenPublishing {
|
||||||
publishToMavenCentral(SonatypeHost.CENTRAL_PORTAL, automaticRelease = true)
|
publishToMavenCentral(automaticRelease = true)
|
||||||
|
|
||||||
// Sign only when a release-signing key is provided (env or Gradle
|
// Sign only when a release-signing key is provided (env or Gradle
|
||||||
// property). Unsigned runs are useful for `publishToMavenLocal` dry-runs;
|
// property). Unsigned runs are useful for `publishToMavenLocal` dry-runs;
|
||||||
@@ -45,9 +48,9 @@ mavenPublishing {
|
|||||||
|
|
||||||
configure(
|
configure(
|
||||||
AndroidSingleVariantLibrary(
|
AndroidSingleVariantLibrary(
|
||||||
|
javadocJar = JavadocJar.Dokka("dokkaGeneratePublicationJavadoc"),
|
||||||
|
sourcesJar = SourcesJar.Sources(),
|
||||||
variant = "release",
|
variant = "release",
|
||||||
sourcesJar = true,
|
|
||||||
publishJavadocJar = true,
|
|
||||||
),
|
),
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user