From fdcb8d0c259f4d84f6b71df0907a7e98a7bc341a Mon Sep 17 00:00:00 2001 From: Lawrence Qiu Date: Tue, 11 Aug 2026 20:20:07 +0000 Subject: [PATCH 1/8] build: skip maven-shade-plugin execution in quick-build profile Heavy shading in gapic-generator-java and spanner-jdbc unpacks and repackages hundreds of megabytes of classes, taking >15 minutes in CI. Configure 'skipShade' property in parent POMs and gapic-generator-java to skip shading during quick-build reactor installations. --- google-cloud-pom-parent/pom.xml | 2 ++ java-spanner-jdbc/pom.xml | 1 + sdk-platform-java/gapic-generator-java-pom-parent/pom.xml | 2 ++ sdk-platform-java/gapic-generator-java/pom.xml | 1 + 4 files changed, 6 insertions(+) diff --git a/google-cloud-pom-parent/pom.xml b/google-cloud-pom-parent/pom.xml index f5016a5dc0c1..eef807f165eb 100644 --- a/google-cloud-pom-parent/pom.xml +++ b/google-cloud-pom-parent/pom.xml @@ -22,6 +22,7 @@ false java.header + false @@ -72,6 +73,7 @@ true true true + true diff --git a/java-spanner-jdbc/pom.xml b/java-spanner-jdbc/pom.xml index e5ef2d1a4a46..dbc69ee51a32 100644 --- a/java-spanner-jdbc/pom.xml +++ b/java-spanner-jdbc/pom.xml @@ -275,6 +275,7 @@ shade + ${skipShade} true true true diff --git a/sdk-platform-java/gapic-generator-java-pom-parent/pom.xml b/sdk-platform-java/gapic-generator-java-pom-parent/pom.xml index 304f7e258e4f..1cecf97432e0 100644 --- a/sdk-platform-java/gapic-generator-java-pom-parent/pom.xml +++ b/sdk-platform-java/gapic-generator-java-pom-parent/pom.xml @@ -45,6 +45,7 @@ true true + false @@ -95,6 +96,7 @@ true true true + true diff --git a/sdk-platform-java/gapic-generator-java/pom.xml b/sdk-platform-java/gapic-generator-java/pom.xml index 91a851fb9f9f..0f7214a547e4 100644 --- a/sdk-platform-java/gapic-generator-java/pom.xml +++ b/sdk-platform-java/gapic-generator-java/pom.xml @@ -255,6 +255,7 @@ shade + ${skipShade} false From 1eed6a3ec215c27c82b78443635b96773b606aad Mon Sep 17 00:00:00 2001 From: Lawrence Qiu Date: Tue, 11 Aug 2026 20:23:19 +0000 Subject: [PATCH 2/8] build: standardize on shade.skip property for quick-build profile Use shade.skip to match Maven Shade Plugin's native user property and standard codebase conventions (checkstyle.skip, enforcer.skip, fmt.skip, etc.). --- google-cloud-pom-parent/pom.xml | 4 ++-- java-bigquery-jdbc/pom.xml | 2 +- java-spanner-jdbc/pom.xml | 2 +- sdk-platform-java/gapic-generator-java-pom-parent/pom.xml | 4 ++-- sdk-platform-java/gapic-generator-java/pom.xml | 2 +- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/google-cloud-pom-parent/pom.xml b/google-cloud-pom-parent/pom.xml index eef807f165eb..657b12bd98c1 100644 --- a/google-cloud-pom-parent/pom.xml +++ b/google-cloud-pom-parent/pom.xml @@ -22,7 +22,7 @@ false java.header - false + false @@ -73,7 +73,7 @@ true true true - true + true diff --git a/java-bigquery-jdbc/pom.xml b/java-bigquery-jdbc/pom.xml index 24bd9b89eec9..775c742b377d 100644 --- a/java-bigquery-jdbc/pom.xml +++ b/java-bigquery-jdbc/pom.xml @@ -104,7 +104,7 @@ shade - ${skipShade} + ${shade.skip} true true true diff --git a/java-spanner-jdbc/pom.xml b/java-spanner-jdbc/pom.xml index dbc69ee51a32..d6143b4895dc 100644 --- a/java-spanner-jdbc/pom.xml +++ b/java-spanner-jdbc/pom.xml @@ -275,7 +275,7 @@ shade - ${skipShade} + ${shade.skip} true true true diff --git a/sdk-platform-java/gapic-generator-java-pom-parent/pom.xml b/sdk-platform-java/gapic-generator-java-pom-parent/pom.xml index 1cecf97432e0..5cc2286cc7d3 100644 --- a/sdk-platform-java/gapic-generator-java-pom-parent/pom.xml +++ b/sdk-platform-java/gapic-generator-java-pom-parent/pom.xml @@ -45,7 +45,7 @@ true true - false + false @@ -96,7 +96,7 @@ true true true - true + true diff --git a/sdk-platform-java/gapic-generator-java/pom.xml b/sdk-platform-java/gapic-generator-java/pom.xml index 0f7214a547e4..ea1c96c03d1d 100644 --- a/sdk-platform-java/gapic-generator-java/pom.xml +++ b/sdk-platform-java/gapic-generator-java/pom.xml @@ -255,7 +255,7 @@ shade - ${skipShade} + ${shade.skip} false From 03cabcf171d664e1738dac0cb3d56e10c01f170b Mon Sep 17 00:00:00 2001 From: Lawrence Qiu Date: Tue, 11 Aug 2026 20:27:31 +0000 Subject: [PATCH 3/8] build: rely on native shade.skip parameter injection without redundant skip tags --- java-bigquery-jdbc/pom.xml | 1 - java-cloud-bom/pom.xml | 2 ++ java-spanner-jdbc/pom.xml | 1 - sdk-platform-java/gapic-generator-java/pom.xml | 1 - 4 files changed, 2 insertions(+), 3 deletions(-) diff --git a/java-bigquery-jdbc/pom.xml b/java-bigquery-jdbc/pom.xml index 775c742b377d..66afb01837e0 100644 --- a/java-bigquery-jdbc/pom.xml +++ b/java-bigquery-jdbc/pom.xml @@ -104,7 +104,6 @@ shade - ${shade.skip} true true true diff --git a/java-cloud-bom/pom.xml b/java-cloud-bom/pom.xml index ec55d6f62f09..66913f677b46 100644 --- a/java-cloud-bom/pom.xml +++ b/java-cloud-bom/pom.xml @@ -29,6 +29,7 @@ true + false @@ -116,6 +117,7 @@ true true true + true diff --git a/java-spanner-jdbc/pom.xml b/java-spanner-jdbc/pom.xml index d6143b4895dc..e5ef2d1a4a46 100644 --- a/java-spanner-jdbc/pom.xml +++ b/java-spanner-jdbc/pom.xml @@ -275,7 +275,6 @@ shade - ${shade.skip} true true true diff --git a/sdk-platform-java/gapic-generator-java/pom.xml b/sdk-platform-java/gapic-generator-java/pom.xml index ea1c96c03d1d..91a851fb9f9f 100644 --- a/sdk-platform-java/gapic-generator-java/pom.xml +++ b/sdk-platform-java/gapic-generator-java/pom.xml @@ -255,7 +255,6 @@ shade - ${shade.skip} false From 963a2f8ebab214056f3f447c32324a6904f634c2 Mon Sep 17 00:00:00 2001 From: Lawrence Qiu Date: Tue, 11 Aug 2026 20:29:52 +0000 Subject: [PATCH 4/8] build: skip maven-shade-plugin in quick-build profile Add shade.skip=true to the quick-build profile in parent POMs to skip heavy shading during fast reactor installations. --- google-cloud-pom-parent/pom.xml | 1 - java-bigquery-jdbc/pom.xml | 1 + java-cloud-bom/pom.xml | 1 - sdk-platform-java/gapic-generator-java-pom-parent/pom.xml | 1 - 4 files changed, 1 insertion(+), 3 deletions(-) diff --git a/google-cloud-pom-parent/pom.xml b/google-cloud-pom-parent/pom.xml index 657b12bd98c1..e8208c764809 100644 --- a/google-cloud-pom-parent/pom.xml +++ b/google-cloud-pom-parent/pom.xml @@ -22,7 +22,6 @@ false java.header - false diff --git a/java-bigquery-jdbc/pom.xml b/java-bigquery-jdbc/pom.xml index 66afb01837e0..24bd9b89eec9 100644 --- a/java-bigquery-jdbc/pom.xml +++ b/java-bigquery-jdbc/pom.xml @@ -104,6 +104,7 @@ shade + ${skipShade} true true true diff --git a/java-cloud-bom/pom.xml b/java-cloud-bom/pom.xml index 66913f677b46..435fbd22aee3 100644 --- a/java-cloud-bom/pom.xml +++ b/java-cloud-bom/pom.xml @@ -29,7 +29,6 @@ true - false diff --git a/sdk-platform-java/gapic-generator-java-pom-parent/pom.xml b/sdk-platform-java/gapic-generator-java-pom-parent/pom.xml index 5cc2286cc7d3..1713078bb866 100644 --- a/sdk-platform-java/gapic-generator-java-pom-parent/pom.xml +++ b/sdk-platform-java/gapic-generator-java-pom-parent/pom.xml @@ -45,7 +45,6 @@ true true - false From 2f79b14dcce2603481fbf51af2fa778894739191 Mon Sep 17 00:00:00 2001 From: Lawrence Qiu Date: Tue, 11 Aug 2026 20:50:52 +0000 Subject: [PATCH 5/8] build: explicitly map shade.skip in shaded module configurations Maven Shade Plugin's skip parameter does not declare a built-in property expression in its Mojo descriptor, so explicit mapping via ${shade.skip} is required for the profile property to take effect. --- java-spanner-jdbc/pom.xml | 1 + sdk-platform-java/gapic-generator-java/pom.xml | 1 + 2 files changed, 2 insertions(+) diff --git a/java-spanner-jdbc/pom.xml b/java-spanner-jdbc/pom.xml index e5ef2d1a4a46..d6143b4895dc 100644 --- a/java-spanner-jdbc/pom.xml +++ b/java-spanner-jdbc/pom.xml @@ -275,6 +275,7 @@ shade + ${shade.skip} true true true diff --git a/sdk-platform-java/gapic-generator-java/pom.xml b/sdk-platform-java/gapic-generator-java/pom.xml index 91a851fb9f9f..ea1c96c03d1d 100644 --- a/sdk-platform-java/gapic-generator-java/pom.xml +++ b/sdk-platform-java/gapic-generator-java/pom.xml @@ -255,6 +255,7 @@ shade + ${shade.skip} false From 2b8f7a05a706ba9e554be97ae0755e2855dfb7ab Mon Sep 17 00:00:00 2001 From: Lawrence Qiu Date: Tue, 11 Aug 2026 20:53:45 +0000 Subject: [PATCH 6/8] build: default shade.skip to false with explanatory comments Document why shade.skip property is declared and mapped explicitly. Default shade.skip to false so normal builds continue shading, while quick-build toggles it to true. --- google-cloud-pom-parent/pom.xml | 3 +++ java-cloud-bom/pom.xml | 3 +++ sdk-platform-java/gapic-generator-java-pom-parent/pom.xml | 3 +++ 3 files changed, 9 insertions(+) diff --git a/google-cloud-pom-parent/pom.xml b/google-cloud-pom-parent/pom.xml index e8208c764809..d47db4505393 100644 --- a/google-cloud-pom-parent/pom.xml +++ b/google-cloud-pom-parent/pom.xml @@ -22,6 +22,9 @@ false java.header + + false diff --git a/java-cloud-bom/pom.xml b/java-cloud-bom/pom.xml index 435fbd22aee3..35df7633e2ea 100644 --- a/java-cloud-bom/pom.xml +++ b/java-cloud-bom/pom.xml @@ -29,6 +29,9 @@ true + + false diff --git a/sdk-platform-java/gapic-generator-java-pom-parent/pom.xml b/sdk-platform-java/gapic-generator-java-pom-parent/pom.xml index 1713078bb866..9308d87611c4 100644 --- a/sdk-platform-java/gapic-generator-java-pom-parent/pom.xml +++ b/sdk-platform-java/gapic-generator-java-pom-parent/pom.xml @@ -45,6 +45,9 @@ true true + + false From b2039d602771c413d45603d31fe4cfbfca955258 Mon Sep 17 00:00:00 2001 From: Lawrence Qiu Date: Tue, 11 Aug 2026 21:00:14 +0000 Subject: [PATCH 7/8] build: map shade.skip across all modules using maven-shade-plugin Add ${shade.skip} to maven-shade-plugin configurations in: - java-bigquery/benchmark - java-bigtable (and test-proxy) - java-storage-nio/google-cloud-nio - java-storage/storage-shared-benchmarking --- java-bigquery/benchmark/pom.xml | 1 + java-bigtable/pom.xml | 3 +++ java-bigtable/test-proxy/pom.xml | 1 + java-storage-nio/google-cloud-nio/pom.xml | 1 + java-storage/storage-shared-benchmarking/pom.xml | 1 + 5 files changed, 7 insertions(+) diff --git a/java-bigquery/benchmark/pom.xml b/java-bigquery/benchmark/pom.xml index ead40fbcc5b3..2c4d95a2ccd1 100644 --- a/java-bigquery/benchmark/pom.xml +++ b/java-bigquery/benchmark/pom.xml @@ -61,6 +61,7 @@ shade + ${shade.skip} ${uberjar.name} diff --git a/java-bigtable/pom.xml b/java-bigtable/pom.xml index c6bd75e5f4f7..f8c14b726cd7 100644 --- a/java-bigtable/pom.xml +++ b/java-bigtable/pom.xml @@ -286,6 +286,9 @@ org.apache.maven.plugins maven-shade-plugin 3.6.0 + + ${shade.skip} + org.apache.maven.plugins diff --git a/java-bigtable/test-proxy/pom.xml b/java-bigtable/test-proxy/pom.xml index d01521d8dedc..63e8a85f732d 100644 --- a/java-bigtable/test-proxy/pom.xml +++ b/java-bigtable/test-proxy/pom.xml @@ -158,6 +158,7 @@ shade + ${shade.skip} *:* diff --git a/java-storage-nio/google-cloud-nio/pom.xml b/java-storage-nio/google-cloud-nio/pom.xml index f26d91de2d5a..ac841e4c19e2 100644 --- a/java-storage-nio/google-cloud-nio/pom.xml +++ b/java-storage-nio/google-cloud-nio/pom.xml @@ -129,6 +129,7 @@ + ${shade.skip} true diff --git a/java-storage/storage-shared-benchmarking/pom.xml b/java-storage/storage-shared-benchmarking/pom.xml index cf7251efc0cc..720cc3a8c2ae 100644 --- a/java-storage/storage-shared-benchmarking/pom.xml +++ b/java-storage/storage-shared-benchmarking/pom.xml @@ -65,6 +65,7 @@ shade + ${shade.skip} ${uberjar.name} From 8863b3c4dd08240ba69375db41070280f34fae01 Mon Sep 17 00:00:00 2001 From: Lawrence Qiu Date: Tue, 11 Aug 2026 21:44:46 +0000 Subject: [PATCH 8/8] build: revert skip-shading for gapic-generator-java Keep gapic-generator-java shaded so its executable protoc plugin binary remains functional. --- sdk-platform-java/gapic-generator-java-pom-parent/pom.xml | 4 ---- sdk-platform-java/gapic-generator-java/pom.xml | 1 - 2 files changed, 5 deletions(-) diff --git a/sdk-platform-java/gapic-generator-java-pom-parent/pom.xml b/sdk-platform-java/gapic-generator-java-pom-parent/pom.xml index 9308d87611c4..304f7e258e4f 100644 --- a/sdk-platform-java/gapic-generator-java-pom-parent/pom.xml +++ b/sdk-platform-java/gapic-generator-java-pom-parent/pom.xml @@ -45,9 +45,6 @@ true true - - false @@ -98,7 +95,6 @@ true true true - true diff --git a/sdk-platform-java/gapic-generator-java/pom.xml b/sdk-platform-java/gapic-generator-java/pom.xml index ea1c96c03d1d..91a851fb9f9f 100644 --- a/sdk-platform-java/gapic-generator-java/pom.xml +++ b/sdk-platform-java/gapic-generator-java/pom.xml @@ -255,7 +255,6 @@ shade - ${shade.skip} false