You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Tamás Cservenák (Jira)" <ji...@apache.org> on 2022/06/23 12:05:00 UTC

[jira] [Commented] (MRESOLVER-157) Get rid of ServiceLocator in Resolver

    [ https://issues.apache.org/jira/browse/MRESOLVER-157?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17558033#comment-17558033 ] 

Tamás Cservenák commented on MRESOLVER-157:
-------------------------------------------

Related discussion https://github.com/ops4j/org.ops4j.pax.url/issues/397

> Get rid of ServiceLocator in Resolver
> -------------------------------------
>
>                 Key: MRESOLVER-157
>                 URL: https://issues.apache.org/jira/browse/MRESOLVER-157
>             Project: Maven Resolver
>          Issue Type: Task
>          Components: Resolver
>            Reporter: Tamás Cservenák
>            Priority: Major
>
> maven-resolver currently supports:
>  * ServiceLocator (deprecated as of 1.7.0 see MRESOLVER-160)
>  * "vanilla" Guice (provides a module)
>  * DI using Sisu, as used in Maven
> IMO, it makes not much sense to support 3 vastly different "DI"s (in quotes as ServiceLocator is really just a dumb factory pattern).
> Not only just complicates the code base, makes changes error prone at least, yields for "exceptions" (this or that will never work with it, as seen with SyncContext), and, for me most importantly, prevents proper constructor initialization and validation of components.



--
This message was sent by Atlassian Jira
(v8.20.7#820007)