Skip to content

Build failure with Gradle 9.x: JvmVendorSpec.IBM_SEMERU not found due to outdated foojay-resolver-convention plugin #44

Description

@oNya685

Description

Build fails when using the project's built-in Gradle Wrapper, which defaults to Gradle 9.4.1, with the following error:

Class org.gradle.jvm.toolchain.JvmVendorSpec does not have member field 'org.gradle.jvm.toolchain.JvmVendorSpec IBM_SEMERU'

Steps to Reproduce

  1. Clone the repository locally
  2. Run any build command directly (e.g. ./gradlew :composeApp:wasmJsBrowserDevelopmentRun), the command will automatically download and use Gradle 9.4.1
  3. Build fails with the error mentioned above

Root Cause

The project uses version 0.10.0 of the org.gradle.toolchains.foojay-resolver-convention plugin, which is incompatible with Gradle 9.x. This old version references the IBM_SEMERU constant that has been removed in Gradle 9.x.

Solution

Upgrade the plugin to version 1.0.0 to resolve the issue. Modify it in settings.gradle.kts:

plugins {
    id("org.gradle.toolchains.foojay-resolver-convention") version "1.0.0"
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions