maven multimodule project, override parent version -
borrowing example similar question, have 2 projects: parent project: a, sub project: b
in a/pom.xml:
<groupid>com.dummy.bla</groupid> <artifactid>parent</artifactid> <version>2.0</version> <packaging>pom</packaging>
in b/pom.xml, have:
<parent> <groupid>com.dummy.bla</groupid> <artifactid>parent</artifactid> <version>2.0</version> </parent> <groupid>com.dummy.bla.sub</groupid> <artifactid>kid</artifactid>
i run tests on b follows,
mvn test -pl b
is possible override parent version, following?
mvn test -pl b -dparent=1.0
you parent project version have dynamic using maven property can override system one.
all child modules have inherit parent version , should not define theirs or process down broken.
update parent poject descriptor below:
<project> <modelversion>4.0.0</modelversion> <groupid>com.dummy.bla</groupid> <artifactid>parent</artifactid> <version>${project.custom.version}</version> <!-- dynamic project version defaults 2.0 --> <packaging>pom</packaging> <name>parent</name> <properties> <project.custom.version>2.0</project.custom.version> </properties> <modules> <module>kid</module> </modules> <!-- ... --> </project>
then declare parent poject in submodules using same dynamic version:
<project> <modelversion>4.0.0</modelversion> <parent> <groupid>com.dummy.bla</groupid> <artifactid>parent</artifactid> <version>${project.custom.version}</version> </parent> <artifactid>kid</artifactid> <name>kid</name> <!-- ... --> </project>
the command line invocation trick using either version declare or default one:
~ cd parent/ ~ mvn -pl kid -dproject.custom.version=3.1
Comments
Post a Comment