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

Ability to introduce new lifecycles phases




      I have simple use case which I cannot resolve with Maven 2 as it is right now. I have a project (actually many), where I need to do the following:

      • Create an JAR artifact (standard stuff, easily possible)
      • Create a source code artifact (standard stuff, easily possible)
      • Create Javadoc and a JAR archive of it (not possible, I explain why).
      • Create a distribution package with release notes, customized reports, Javadoc, JAR, dependencies, documentation, filtered files, etc. (not possible, I explain why and will file another JIRA issue for this)

      The constraint is that I need to create all 4 artifacts and have them installed them in the repository when using "mvn install".

      As there are no other appropriate lifecycle phases in the default lifecycle, I attach the generation of all 4 artifacts to the phase "package". That is very messy, and won't provide me with what I need. It should be possible to define a new lifecycle and have new phases attached to it. E.g.:

      • ... (standard lifecycle phases)
      • test
      • jar
      • javadoc
      • source-archive
      • javadoc-archive
      • package
      • ... (standard lifecycle phases)

      The reason why it is mandatory at this point to have new lifecycle phases, is that there is a constraint that a plugin can have only one unique configuration per lifecycle phase. So if I need to use the same plugin, but e.g. using different goals which require different plugin configurations, then that's not possible. The only way this can be achieved is by using new lifecycle phases, which is also not possible at this point. Meaning, I cannot create a solution for my simple use case in Maven 2 and hence it blocks me for moving to Maven 2 (I really hate to file blockers, but I'm at a dead-end).


          Issue Links



              • Assignee:
                chagmann@mhave.com Chris Hagmann
              • Votes:
                3 Vote for this issue
                7 Start watching this issue


                • Created: