@@ -99,13 +99,10 @@ protected PlexusContainer container(C context) throws Exception {
9999 .setName ("maven" );
100100 customizeContainerConfiguration (context , cc );
101101
102- Set <String > exportedArtifacts = new HashSet <>(coreEntry .getExportedArtifacts ());
103- Set <String > exportedPackages = new HashSet <>(coreEntry .getExportedPackages ());
104- for (CoreExtensionEntry extension : extensions ) {
105- exportedArtifacts .addAll (extension .getExportedArtifacts ());
106- exportedPackages .addAll (extension .getExportedPackages ());
107- }
108- CoreExports exports = new CoreExports (containerRealm , exportedArtifacts , exportedPackages );
102+ CoreExports exports = new CoreExports (
103+ containerRealm ,
104+ collectExportedArtifacts (coreEntry , extensions ),
105+ collectExportedPackages (coreEntry , extensions ));
109106 Thread .currentThread ().setContextClassLoader (containerRealm );
110107 DefaultPlexusContainer container = new DefaultPlexusContainer (cc , getCustomModule (context , exports ));
111108
@@ -153,6 +150,24 @@ protected void configure() {
153150 return container ;
154151 }
155152
153+ protected Set <String > collectExportedArtifacts (
154+ CoreExtensionEntry coreEntry , List <CoreExtensionEntry > extensionEntries ) {
155+ Set <String > exportedArtifacts = new HashSet <>(coreEntry .getExportedArtifacts ());
156+ for (CoreExtensionEntry extension : extensionEntries ) {
157+ exportedArtifacts .addAll (extension .getExportedArtifacts ());
158+ }
159+ return exportedArtifacts ;
160+ }
161+
162+ protected Set <String > collectExportedPackages (
163+ CoreExtensionEntry coreEntry , List <CoreExtensionEntry > extensionEntries ) {
164+ Set <String > exportedPackages = new HashSet <>(coreEntry .getExportedPackages ());
165+ for (CoreExtensionEntry extension : extensionEntries ) {
166+ exportedPackages .addAll (extension .getExportedPackages ());
167+ }
168+ return exportedPackages ;
169+ }
170+
156171 /**
157172 * Note: overriding this method should be avoided. Preferred way to replace Maven components is the "normal" way
158173 * where the components are on index (are annotated with JSR330 annotations and Sisu index is created) and, they
0 commit comments