Stuart,
that was very valuable information! Thank you!
I have boldly applied your recommendation and it works in the core
realm:
https://github.com/apache/maven-resolver/commit/2e78944a673ac7267f9d40abdeb4816f00381797#diff-0b6e1366069deb9a8dcbf0126334e47dR65-R69
As for the plugin, I have
Scratch that - the AetherModule and DefaultServiceLocator are only used by
clients that don't use dependency injection, they're not used by Maven
itself.
The log snippet you posted above shows both SyncContextFactory components
are being bound in the same realm - they are therefore given the
The issue is indeed with AetherModule which is installed by Maven
via MavenAetherModule
This module adds concrete bindings for various Aether components which
cannot be overridden in plugins/extensions.
These bindings will need to be changed to support overriding, I'll create a
patch to show how
Am 2020-08-11 um 11:48 schrieb Stuart McCulloch:
JSR330 annotation scanning is enabled for all realms including
extensions, so it should be picked up.
Does the replacement implementation have the same "hint" or name?
ie. @Named("default")
You can turn on detailed container logging with
JSR330 annotation scanning is enabled for all realms including
extensions, so it should be picked up.
Does the replacement implementation have the same "hint" or name?
ie. @Named("default")
You can turn on detailed container logging with -Dsisu.debug which will log
all bindings discovered in
Folks,
I am trying to write an extension for Maven Resolver which shall replace
a default implementation. The implemented interface is an exported
package in maven-core, the implementing class has proper javax.inject
annotations @Named(...) and @Singleton so does the default (bundled)
one.