From 4bf5e1e388bf6095802e52aaac521bcc445216a4 Mon Sep 17 00:00:00 2001 From: Matthew Gill Date: Mon, 13 Jun 2022 16:25:19 +0100 Subject: [PATCH 1/3] Copy the ConfigCdiExtension into the config module The embedded dependencies needed not inlining, as by default they overwrite classes from the main module. This isn't the case when using the 'unpackBundle' option, but that causes module-info files from the dependencies to break compilation. A sensible option seems to be to not inline the dependencies. Note that the overwritten class causes the single artifact it comes from to be inlined. Signed-off-by: Matthew Gill --- appserver/microprofile/config/pom.xml | 34 +- .../config/ConfigCdiExtension.java | 525 ++++++++++++++++++ 2 files changed, 542 insertions(+), 17 deletions(-) create mode 100644 appserver/microprofile/config/src/main/java/io/helidon/microprofile/config/ConfigCdiExtension.java diff --git a/appserver/microprofile/config/pom.xml b/appserver/microprofile/config/pom.xml index bf41d8b8150..e108246b590 100644 --- a/appserver/microprofile/config/pom.xml +++ b/appserver/microprofile/config/pom.xml @@ -82,25 +82,25 @@ - groupId=io.helidon.microprofile.config;inline=true, - groupId=io.helidon.config;artifactId=helidon-config-mp;inline=true, - groupId=io.helidon.common;artifactId=helidon-common;inline=true, - groupId=io.helidon.common;artifactId=helidon-common-service-loader;inline=true, - groupId=io.helidon.config;artifactId=helidon-config-yaml-mp;inline=true, - groupId=io.helidon.config;artifactId=helidon-config;inline=true, + groupId=io.helidon.microprofile.config, + groupId=io.helidon.config;artifactId=helidon-config-mp, + groupId=io.helidon.common;artifactId=helidon-common, + groupId=io.helidon.common;artifactId=helidon-common-service-loader, + groupId=io.helidon.config;artifactId=helidon-config-yaml-mp, + groupId=io.helidon.config;artifactId=helidon-config, - groupId=io.helidon.common;artifactId=helidon-common-media-type;inline=true, - groupId=io.helidon.config;artifactId=helidon-config-yaml;inline=true, - artifactId=snakeyaml;inline=true, + groupId=io.helidon.common;artifactId=helidon-common-reactive, + groupId=io.helidon.common;artifactId=helidon-common-mapper, --> + groupId=io.helidon.common;artifactId=helidon-common-media-type, + groupId=io.helidon.config;artifactId=helidon-config-yaml, + artifactId=snakeyaml, + groupId=io.helidon.config;artifactId=helidon-config-encryption, + groupId=io.helidon.common;artifactId=helidon-common-key-util, + groupId=io.helidon.common;artifactId=helidon-common-configurable, + groupId=io.helidon.common;artifactId=helidon-common-context, + groupId=io.helidon.common;artifactId=helidon-common-crypto, + groupId=io.helidon.config;artifactId=helidon-config-object-mapping, -->