From acc6dccc9d164c718638b8a3fc1b830c33cae07c Mon Sep 17 00:00:00 2001 From: Elliotte Rusty Harold Date: Thu, 23 Jul 2026 11:52:08 +0000 Subject: [PATCH 1/2] Clarify opaque strings paragraph in JDK toolchain docs --- src/site/apt/toolchains/jdk.apt.vm | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/src/site/apt/toolchains/jdk.apt.vm b/src/site/apt/toolchains/jdk.apt.vm index 04f2ac1..6ad703d 100644 --- a/src/site/apt/toolchains/jdk.apt.vm +++ b/src/site/apt/toolchains/jdk.apt.vm @@ -117,10 +117,9 @@ JDK Toolchain +---+ - Aside from version, the definitions are opaque strings. Maven looks in <<>> - for a toolchain that provides version=="1.8" and vendor=="temurin". It does not know or care - what these strings mean. It does not, for instance, concern itself with whether the jdkHome configured - by the toolchain that satisfies version=="1.8" and vendor=="temurin" is JDK 8 from the Temurin project, - or JDK 21 from Oracle. JDK toolchain only checks that directory exists. + Aside from version, the values of <<<\>>> elements are treated as opaque strings. + Maven looks in <<>> for a toolchain that provides version=="1.8" and vendor=="temurin". + It does not interpret these strings semantically; for example, it does not validate that the jdkHome + directory actually contains a JDK matching the declared version and vendor. All conditions need to be satisfied to find a toolchain. From 3b146989bf6e21b4bf0a690b3be06d9adf14199b Mon Sep 17 00:00:00 2001 From: Elliotte Rusty Harold Date: Thu, 23 Jul 2026 11:55:48 +0000 Subject: [PATCH 2/2] Clarify Maven's interpretation of toolchain strings Clarified that Maven does not validate the jdkHome directory contents. --- src/site/apt/toolchains/jdk.apt.vm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/site/apt/toolchains/jdk.apt.vm b/src/site/apt/toolchains/jdk.apt.vm index 6ad703d..9a86c66 100644 --- a/src/site/apt/toolchains/jdk.apt.vm +++ b/src/site/apt/toolchains/jdk.apt.vm @@ -119,7 +119,7 @@ JDK Toolchain Aside from version, the values of <<<\>>> elements are treated as opaque strings. Maven looks in <<>> for a toolchain that provides version=="1.8" and vendor=="temurin". - It does not interpret these strings semantically; for example, it does not validate that the jdkHome + It does not interpret these strings semantically. For example, it does not validate that the jdkHome directory actually contains a JDK matching the declared version and vendor. All conditions need to be satisfied to find a toolchain.