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

Robert Scholte commented on MPLUGIN-350:
----------------------------------------

for example: maven-compiler-plugins outputDirectory (target/classes) is the 
input of maven-jar-plugin. By being explicit about the input and output we can 
do smart things at Maven level. In this case it means that maven-jar-plugin 
must always be executed after maven-compiler-plugin.
Only if all inputs of a plugin have been processed as output of other plugins, 
this plugin can be executed.

> Split @Parameter into @Input and @Output
> ----------------------------------------
>
>                 Key: MPLUGIN-350
>                 URL: https://issues.apache.org/jira/browse/MPLUGIN-350
>             Project: Maven Plugin Tools
>          Issue Type: New Feature
>            Reporter: Robert Scholte
>            Priority: Major
>
> By knowing if parameters are input or output parameters, it is possible to 
> improve our builds. It will be possible to create DAGs and chain the 
> execution blocks much smarter.
> The Maven Extension created by Gradle heavily relies on this kind of 
> information.
> It is probably easier to use new annotations instead of adding a (required) 
> status-field to @Parameter
> Looking at the {{plugin.xml}} it looks quite easy to solve this and stay 
> backwards compatible: the file looks now like:
> {code:xml}
>   <parameters>
>     <parameter>
>       ...
>     </parameter>
>   </parameters>
> {code}
> With plexus-magic the following should still work:
> {code:xml}
>   <parameters>
>     <input>
>       ...
>     </input>
>     <output>
>       ...
>     </output>
>   </parameters>
> {code}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to