Christoph Läubrich opened MNG-8072 and commented
Currently there is some vague definition of a "build pom" versus a "consumer pom":
there are also some plugins around to work with this e.g.
but there are some issues:
- Maven makes some assumptions about its "file", e.g setting the file changes the basedir
- Even though there is a setPomFile method that do not change the basedir e.g. a parent ref by default would be broken
- once we change the file, there is a mismatch between the pom on disk and the model
- it is not possible for a plugin to know the original file and the consumer file, e.g. if I want to deploy the original file e.g. with classifier "pom-build"
- because of this usually "consumer pom plugins" generate the the new pom to a new file in the project root, where it actually not belongs to and leaves the file even after mvn clean if no special actions are taken.
I therefore like to suggest to enhance the MavenProject with one more method set/getConsumerPom that fills this gap, then plugins working on the consumer pom can set the file there and e.g. https://maven.apache.org/plugins/maven-deploy-plugin/deploy-mojo.html can look there first, or even have an option to deploy both poms automatically if they differ.
Of course this will be nothing happen right now but looks like something that can become useful over time and maybe fully adapted in Maven4.
Remote Links:
Christoph Läubrich opened MNG-8072 and commented
Currently there is some vague definition of a "build pom" versus a "consumer pom":
there are also some plugins around to work with this e.g.
but there are some issues:
I therefore like to suggest to enhance the MavenProject with one more method set/getConsumerPom that fills this gap, then plugins working on the consumer pom can set the file there and e.g. https://maven.apache.org/plugins/maven-deploy-plugin/deploy-mojo.html can look there first, or even have an option to deploy both poms automatically if they differ.
Of course this will be nothing happen right now but looks like something that can become useful over time and maybe fully adapted in Maven4.
Remote Links: