> Child modules can add configuration to mojo executions configured in
> parent pom. This isn't pretty, but works.
>

That's not what I had in mind. I was talking about one plugin binding in
the parent pom and then a different plugin binding in the child, which we
want to be after the one in the parent. Then only having "dependsOn"
wouldn't work in a case where we can't update the parent.


> And, to be clear, I am not saying we shouldn't implement before/after
> configuration, I think it will be convenient to have both. All I am
> saying only one is truly required.


Not in the case I describe (I think).


>
> --
> Regards,
> Igor
>
> On 2014-06-12, 2:23, Anders Hammar wrote:
>
>>
>>> Having said that, I think having both "before" and "after" attributes
>>> will make configuration easier in some cases, but I still think all
>>> ordering can be expressed just with dependsOf (which is the same as
>>> "after").
>>>
>>
>>
>> Let's say you're not in control of the pom where the plugin binding is
>> declared, which you want to add a binding before. Then it is not possible
>> to add the "dependsOn". One scenario would be a parent pom you're
>> inheriting from.
>>
>> /Anders
>>
>>
>>
>>> --
>>> Regards,
>>> Igor
>>>
>>>
>>>
>>>
>>> On 2014-06-11, 15:44, Robert Scholte wrote:
>>>
>>>  The "dependsOn" would only help if this execution should be done *after*
>>>> another execution. However, I think we also need a solution for the
>>>> *before* one, unless we say: just manage this by ordering your plugins.
>>>> Keep in mind: what to do if executions are defined in the parent and you
>>>> want to execute your plugin before and/or after these inherited
>>>> executions?
>>>>
>>>> Thanks,
>>>> Robert
>>>>
>>>> Op Wed, 11 Jun 2014 21:31:23 +0200 schreef Igor Fedorenko
>>>> <i...@ifedorenko.com>:
>>>>
>>>>   Misconfigured execution order should be reported as build failer.
>>>>
>>>>>
>>>>> I don't see how profiles make this problem more complicated. It maybe
>>>>> little tedious to configure, but I believe it is always possible to add
>>>>> dependsOn attribute to execution defined elsewhere. So in your example,
>>>>> the release profile will need to define execution with id of the "final
>>>>> step" and add dependsOf="id-of-sign-step".
>>>>>
>>>>> --
>>>>> Regards,
>>>>> Igor
>>>>>
>>>>> On 2014-06-11, 15:17, Jörg Schaible wrote:
>>>>>
>>>>>  Hi Igor,
>>>>>>
>>>>>> Igor Fedorenko wrote:
>>>>>>
>>>>>>   More I think about it, less I like the idea of explicit order
>>>>>> values. I
>>>>>>
>>>>>>> think this will be rather inconvenient to setup and error prone to
>>>>>>> maintain.
>>>>>>>
>>>>>>> Initial setup will require some tooling to see executions in a
>>>>>>> particular case with their default ordering values. Not the end of
>>>>>>> the
>>>>>>> world, but somebody will have to implement the tooling and the users
>>>>>>> will know how to find it.
>>>>>>>
>>>>>>> More problematic will be ongoing changes to the project itself
>>>>>>> and its parents. When I need to add/remove executions in a parent, I
>>>>>>> will have to review all projects that inherit from it to ensure
>>>>>>> order is
>>>>>>> still correct. I work on a monster codebase with 600+ modules now, I
>>>>>>> just don't see how this is workable.
>>>>>>>
>>>>>>> If executions are enabled through a profile, especially rarely
>>>>>>> activated
>>>>>>> profile, configuring expected order becomes really cumbersome.
>>>>>>> Think of -Prelease profile, that adds gpg mojo to package phase...
>>>>>>> good luck troubleshooting why signed jars do not match their gpg
>>>>>>> signatures during the release.
>>>>>>>
>>>>>>> I think we need to find a way to make before/after hints work. I
>>>>>>> don't
>>>>>>> have a proposal yet, but I wonder, is this not the same problem as
>>>>>>> ordering modules in the reactor? When there are no dependencies,
>>>>>>> modules
>>>>>>> are built in their specified order, but the order changes when there
>>>>>>> are
>>>>>>> dependencies.
>>>>>>>
>>>>>>>
>>>>>> please have a look at the latest comments on MNG-3522, because adding
>>>>>> executions in a profile causes some edge cases, which should be
>>>>>> defined in
>>>>>> advance.
>>>>>>
>>>>>> Regards,
>>>>>> Jörg
>>>>>>
>>>>>>
>>>>>> ---------------------------------------------------------------------
>>>>>> To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
>>>>>> For additional commands, e-mail: dev-h...@maven.apache.org
>>>>>>
>>>>>>
>>>>>>  ------------------------------------------------------------
>>>>> ---------
>>>>> To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
>>>>> For additional commands, e-mail: dev-h...@maven.apache.org
>>>>>
>>>>>
>>>> ---------------------------------------------------------------------
>>>> To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
>>>> For additional commands, e-mail: dev-h...@maven.apache.org
>>>>
>>>>
>>>>  ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
>>> For additional commands, e-mail: dev-h...@maven.apache.org
>>>
>>>
>>>
>>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org
> For additional commands, e-mail: dev-h...@maven.apache.org
>
>

Reply via email to