toolchain で指定した JDK の home ディレクトリを表示する

blog1.mammb.com


toolchain で指定した JDK の home ディレクトリを表示する。

java {
    toolchain {
        languageVersion = JavaLanguageVersion.of(25)
    }
}

tasks.register<DefaultTask>("printJavaHome") {
    val toolchainService = project.extensions.getByType<JavaToolchainService>()
    val launcher = toolchainService.launcherFor(
        project.extensions.getByType<JavaPluginExtension>().toolchain
    )
    doLast {
        println("Java Home: ${launcher.get().metadata.installationPath}")
    }
}

以下のように表示できる。

$ ./gradlew printJavaHome   

> Task :app:printJavaHome
Java Home: /Users/user/.gradle/jdks/eclipse_adoptium-25-x86_64-os_x.2/jdk-25+36/Contents/Home