You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Slawomir Jaranowski (Jira)" <ji...@apache.org> on 2021/11/19 16:05:00 UTC
[jira] [Commented] (MPLUGIN-323) create @Requirement annotation to replace @Component (should be deprecated)
[ https://issues.apache.org/jira/browse/MPLUGIN-323?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17446557#comment-17446557 ]
Slawomir Jaranowski commented on MPLUGIN-323:
---------------------------------------------
Maybe removeĀ {{@Component}} annotation at all and use {{@Inject}} instead.
> create @Requirement annotation to replace @Component (should be deprecated)
> ---------------------------------------------------------------------------
>
> Key: MPLUGIN-323
> URL: https://issues.apache.org/jira/browse/MPLUGIN-323
> Project: Maven Plugin Tools
> Issue Type: Wish
> Components: maven-plugin-annotations, maven-plugin-tools-javadoc
> Affects Versions: 3.5
> Reporter: Herve Boutemy
> Priority: Major
> Fix For: 3.7.0
>
>
> injecting a Plexus component into a mojo is currently marked through {{@Component}} annotation (or {{@component}} javadoc tag)
> This "component" term is misleading for 2 reasons:
> 1. in plugin descriptor, it creates a {{<requirement>}} XML element: http://maven.apache.org/ref/3-LATEST/maven-plugin-api/plugin.html#class_requirement
> 2. in Plexus, injecting is marked with {{@Requirement}} annotation, when {{@Component}} is used to define a component: http://codehaus-plexus.github.io/plexus-containers/plexus-component-annotations/
> This annotation creates great confusion for years, then even if Plexus is being dropped for javax.inject, fixing this misleading terms would be beneficial IMHO
--
This message was sent by Atlassian Jira
(v8.20.1#820001)