Uploaded image for project: 'Maven'
  1. Maven
  2. MNG-7991

refactor "aggregator" goal feature

    XMLWordPrintableJSON

Details

    Description

      aggregation was added in early Maven 2 stages with MNG-250, not really documented AFAIK, but highly visible through @Mojo(aggregator=true) Mojo annotation

      there are multiple shortcomings found over time:

      • discrepancy between CLI and lifecycle use:
        • CLI executes aggregator-marked goal only on root module (skips goal execution in sub-modules) and after executing the lifecycle to all modules
        • lifecycle-bound goal executes goal on each and every module, during normal lifecycle run on each module: not even sure aggregator configuration changes anything
      • forked lifecycle execution vs second execution in modules
      • sometimes, instead of executing aggregate goal before building modules, it would be useful to execute aggregate after building modules (to aggregate some results built in each module)
        notice that this looks also like the need for "execute at end" as found in install/deploy

      we probably need to better document what aggregate currently does and define what should be the target: perhaps refactoring will require new mechanisms that we won't call aggregator, like MNG-5665...

      edge case: aggregating reports for maven-site-plugin (launched by maven-reporting-exec, hence quite independent from associated reporting goals even if we expect some consistency between site reports and reporting goals)

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              hboutemy Herve Boutemy
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated: