Re: Sharing a version among different modules
I keep all version numbers in the dependencyManagement section of my parent POM, which is different from my aggregator POM and is parent to the aggregator and all its modules. In this way I specify each version exactly once. Something like: dependencyManagement dependencies dependency groupIdbouncycastle/groupId artifactIdbcprov-jdk13/artifactId version140/version /dependency /dependencyManagement dependencyManagement is a direct child of the project element. Cheers, Nicola Musatti Ernst de Haan wrote: - in the parent pom.xml, to denote the project version you need this - in each module, to denote the module version just leave out the version and it will inherit it from the parent pom - in each module's reference to the parent you need this - in each module's reference to a sibling dependency groupId${project.parent.groupId}/groupId artifactIdsibling-one/artifactId version${project.parent.version}/version /dependency Thanks a lot Kristian, this indeed improves the situation a *lot*. Instead of 10 references for 3 modules, I am now able to reduce it to: 1 + (1 per module) However, I'll continue my quest to further reduction of replication, as my ultimate goal is still to have the version number in one place. Perhaps XInclude or so will do the trick. Thanks heaps! Ernst - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org
Re: Sharing a version among different modules
Thanks, Nicola. Interesting alternative! So if I understand you correctly, you have version numbers on the aggregator and on modules below that, but you just keep those to a fixed vale (say 0) and use the root parent version to the outside world? Cheers, Ernst de Haan Op 25 mei 2010 om 14:28 heeft Nicola Musatti nicola.musa...@objectway.it het volgende geschreven:\ I keep all version numbers in the dependencyManagement section of my parent POM, which is different from my aggregator POM and is parent to the aggregator and all its modules. In this way I specify each version exactly once. Something like: dependencyManagement dependencies dependency groupIdbouncycastle/groupId artifactIdbcprov-jdk13/artifactId version140/version /dependency /dependencyManagement dependencyManagement is a direct child of the project element. Cheers, Nicola Musatti Ernst de Haan wrote: - in the parent pom.xml, to denote the project version you need this - in each module, to denote the module version just leave out the version and it will inherit it from the parent pom - in each module's reference to the parent you need this - in each module's reference to a sibling dependency groupId${project.parent.groupId}/groupId artifactIdsibling-one/artifactId version${project.parent.version}/version /dependency Thanks a lot Kristian, this indeed improves the situation a *lot*. Instead of 10 references for 3 modules, I am now able to reduce it to: 1 + (1 per module) However, I'll continue my quest to further reduction of replication, as my ultimate goal is still to have the version number in one place. Perhaps XInclude or so will do the trick. Thanks heaps! Ernst - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org
RE: Sharing a version among different modules
I use this method described by Nicole as well. Its described in great detail in the definitive guide. http://www.sonatype.com/books/mvnex-book/reference/optimizing-sect-dependencies.html -Original Message- From: Ernst de Haan [mailto:er...@ernstdehaan.com] Sent: Tuesday, May 25, 2010 8:58 AM To: Maven Users List Cc: Maven Users List Subject: Re: Sharing a version among different modules Thanks, Nicola. Interesting alternative! So if I understand you correctly, you have version numbers on the aggregator and on modules below that, but you just keep those to a fixed vale (say 0) and use the root parent version to the outside world? Cheers, Ernst de Haan Op 25 mei 2010 om 14:28 heeft Nicola Musatti nicola.musa...@objectway.it het volgende geschreven:\ I keep all version numbers in the dependencyManagement section of my parent POM, which is different from my aggregator POM and is parent to the aggregator and all its modules. In this way I specify each version exactly once. Something like: dependencyManagement dependencies dependency groupIdbouncycastle/groupId artifactIdbcprov-jdk13/artifactId version140/version /dependency /dependencyManagement dependencyManagement is a direct child of the project element. Cheers, Nicola Musatti Ernst de Haan wrote: - in the parent pom.xml, to denote the project version you need this - in each module, to denote the module version just leave out the version and it will inherit it from the parent pom - in each module's reference to the parent you need this - in each module's reference to a sibling dependency groupId${project.parent.groupId}/groupId artifactIdsibling-one/artifactId version${project.parent.version}/version /dependency Thanks a lot Kristian, this indeed improves the situation a *lot*. Instead of 10 references for 3 modules, I am now able to reduce it to: 1 + (1 per module) However, I'll continue my quest to further reduction of replication, as my ultimate goal is still to have the version number in one place. Perhaps XInclude or so will do the trick. Thanks heaps! Ernst - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org
Re: Sharing a version among different modules
Ernst de Haan wrote: Thanks, Nicola. Interesting alternative! So if I understand you correctly, you have version numbers on the aggregator and on modules below that, but you just keep those to a fixed vale (say 0) and use the root parent version to the outside world? No, once version numbers are specified in your parent POM's dependencyManagement element you don't need to specify them again. To give an example in a module POM I would specify a dependency to bcprov-jdk13 as dependencies dependency groupIdbouncycastle/groupId artifactIdbcprov-jdk13/artifactId /dependency /dependencies Cheers, Nicola Cheers, Ernst de Haan Op 25 mei 2010 om 14:28 heeft Nicola Musatti nicola.musa...@objectway.it het volgende geschreven:\ I keep all version numbers in the dependencyManagement section of my parent POM, which is different from my aggregator POM and is parent to the aggregator and all its modules. In this way I specify each version exactly once. Something like: dependencyManagement dependencies dependency groupIdbouncycastle/groupId artifactIdbcprov-jdk13/artifactId version140/version /dependency /dependencyManagement dependencyManagement is a direct child of the project element. Cheers, Nicola Musatti Ernst de Haan wrote: - in the parent pom.xml, to denote the project version you need this - in each module, to denote the module version just leave out the version and it will inherit it from the parent pom - in each module's reference to the parent you need this - in each module's reference to a sibling dependency groupId${project.parent.groupId}/groupId artifactIdsibling-one/artifactId version${project.parent.version}/version /dependency Thanks a lot Kristian, this indeed improves the situation a *lot*. Instead of 10 references for 3 modules, I am now able to reduce it to: 1 + (1 per module) However, I'll continue my quest to further reduction of replication, as my ultimate goal is still to have the version number in one place. Perhaps XInclude or so will do the trick. Thanks heaps! Ernst - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org
Re: Sharing a version among different modules
Nicola and Todd, This is *exactly* what I was looking for! The article Todd mentioned explains it very well, both the challenges and the solutions. Cheers! Ernst de Haan Op 25 mei 2010 om 15:03 heeft Thiessen, Todd (Todd) tthies...@avaya.com het volgende geschreven:\ I use this method described by Nicole as well. Its described in great detail in the definitive guide. http://www.sonatype.com/books/mvnex-book/reference/optimizing-sect-dependencies.html -Original Message- From: Ernst de Haan [mailto:er...@ernstdehaan.com] Sent: Tuesday, May 25, 2010 8:58 AM To: Maven Users List Cc: Maven Users List Subject: Re: Sharing a version among different modules Thanks, Nicola. Interesting alternative! So if I understand you correctly, you have version numbers on the aggregator and on modules below that, but you just keep those to a fixed vale (say 0) and use the root parent version to the outside world? Cheers, Ernst de Haan Op 25 mei 2010 om 14:28 heeft Nicola Musatti nicola.musa...@objectway.it het volgende geschreven:\ I keep all version numbers in the dependencyManagement section of my parent POM, which is different from my aggregator POM and is parent to the aggregator and all its modules. In this way I specify each version exactly once. Something like: dependencyManagement dependencies dependency groupIdbouncycastle/groupId artifactIdbcprov-jdk13/artifactId version140/version /dependency /dependencyManagement dependencyManagement is a direct child of the project element. Cheers, Nicola Musatti Ernst de Haan wrote: - in the parent pom.xml, to denote the project version you need this - in each module, to denote the module version just leave out the version and it will inherit it from the parent pom - in each module's reference to the parent you need this - in each module's reference to a sibling dependency groupId${project.parent.groupId}/groupId artifactIdsibling-one/artifactId version${project.parent.version}/version /dependency Thanks a lot Kristian, this indeed improves the situation a *lot*. Instead of 10 references for 3 modules, I am now able to reduce it to: 1 + (1 per module) However, I'll continue my quest to further reduction of replication, as my ultimate goal is still to have the version number in one place. Perhaps XInclude or so will do the trick. Thanks heaps! Ernst - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org
Sharing a version among different modules
How do I share one version number across multiple module (subprojects)? I have one parent pom.xml referencing 3 modules and -believe it or not- I've got the version number in 10 different locations: - in the parent pom.xml, to denote the project version - in each module, to denote the module version - in each module's reference to the parent - in each module's reference to a sibling Any suggestions for reducing the number of locations (preferably to 1) ? PS. To see the project and the POMs, see http://github.com/znerd/logdoc Cheers, Ernst - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org
Re: Sharing a version among different modules
that is how do it (http://github.com/mkristian/jruby-maven-plugins/) On Mon, May 24, 2010 at 10:48 PM, Ernst de Haan er...@ernstdehaan.com wrote: How do I share one version number across multiple module (subprojects)? I have one parent pom.xml referencing 3 modules and -believe it or not- I've got the version number in 10 different locations: - in the parent pom.xml, to denote the project version you need this - in each module, to denote the module version just leave out the version and it will inherit it from the parent pom - in each module's reference to the parent you need this - in each module's reference to a sibling dependency groupId${project.parent.groupId}/groupId artifactIdsibling-one/artifactId version${project.parent.version}/version /dependency regards Kristian Any suggestions for reducing the number of locations (preferably to 1) ? PS. To see the project and the POMs, see http://github.com/znerd/logdoc Cheers, Ernst - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org -- Kristian Meier + Saumya Sharma + Sanuka Meier Vadakkethu House, Edayanmula West PO - 689532, Pathanamthitta District, Kerala, INDIA tel: +91 468 2319577 protect your privacy while searching the net: www.ixquick.com _=_ q(-_-)p '_) (_` /__/ \ _(_ / )_ (__\_\_|_/__) - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org
Re: Sharing a version among different modules
You can use {$parent.version} variable in modules poms. But if you are using release plugin http://maven.apache.org/plugins/maven-release-plugin/ for releasing versions, same version numbers in poms are updating automatically. There is no need to have only one. See http://maven.apache.org/plugins/maven-release-plugin/prepare-mojo.html#autoVersionSubmodules Martin On 24.5.2010 19:18, Ernst de Haan wrote: How do I share one version number across multiple module (subprojects)? I have one parent pom.xml referencing 3 modules and -believe it or not- I've got the version number in 10 different locations: - in the parent pom.xml, to denote the project version - in each module, to denote the module version - in each module's reference to the parent - in each module's reference to a sibling Any suggestions for reducing the number of locations (preferably to 1) ?
Re: Sharing a version among different modules
- in the parent pom.xml, to denote the project version you need this - in each module, to denote the module version just leave out the version and it will inherit it from the parent pom - in each module's reference to the parent you need this - in each module's reference to a sibling dependency groupId${project.parent.groupId}/groupId artifactIdsibling-one/artifactId version${project.parent.version}/version /dependency Thanks a lot Kristian, this indeed improves the situation a *lot*. Instead of 10 references for 3 modules, I am now able to reduce it to: 1 + (1 per module) However, I'll continue my quest to further reduction of replication, as my ultimate goal is still to have the version number in one place. Perhaps XInclude or so will do the trick. Thanks heaps! Ernst - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org
Re: Sharing a version among different modules
But if you are using release plugin http://maven.apache.org/plugins/maven-release-plugin/ for releasing versions, same version numbers in poms are updating automatically. There is no need to have only one. See http://maven.apache.org/plugins/maven-release-plugin/prepare-mojo.html#autoVersionSubmodules Martin, thanks a lot! This looks very promising. /me goes off to do some more investigation and try things out... Cheers, Ernst - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org
Re: Sharing a version among different modules
How do I share one version number across multiple module (subprojects)? Any suggestions for reducing the number of locations (preferably to 1) ? There's also the versions-maven-plugin... Wayne - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org
Re: Sharing a version among different modules
How do I share one version number across multiple module (subprojects)? Any suggestions for reducing the number of locations (preferably to 1) ? There's also the versions-maven-plugin... Cheers, Wayne, the more options the better. I'll look at that as well. Regards, Ernst -- trying to look at it the positive side of having to wade through more documentation ;-) - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org