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

Aggregator Mojo should be executed only once even when part of the lifecycle

Attach filesAttach ScreenshotAdd voteVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Open
    • Minor
    • Resolution: Unresolved
    • 3.5.2
    • None
    • Core
    • None

    Description

      Currently aggregator Mojo (annotated with @Mojo(aggregator=true, ...) ) are used to define Mojo whose goal whould be called directly, not bound to a lifecycle phase.
      This is the case for release:prepare / release:perform for exemple.

      I would be good if such aggregator Mojo ware also executed only once when part of a lifecycle. Currently we have to specify <inherited>false</inherited> in the pom.

      It would comply to the principle of least surprise because it seems every doc I found just say something "like these Mojo will be executed only once", and do not specify "in the case of direct invocation".

      I first reported this behavior on the mailing list: http://maven.40175.n5.nabble.com/Make-custom-plugin-executed-only-once-in-multimodule-inherited-false-aggregator-td5921630.html

      This JIRA may be related to improvement in the lifecycle ( MNG-5665 ) as suggested by Robert Scholte

      Attachments

        Issue Links

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            Unassigned Unassigned
            fmarot Francois MAROT

            Dates

              Created:
              Updated:

              Slack

                Issue deployment