Re: How can Maven be used to prepare a complex, multi-module JavaEE app for release
You might want to take a look at the versions plugin (http://mojo.codehaus.org/versions-maven-plugin/) to change the root POM and make the child modules fall in line (update-child-modules goal). Best maven practice seems to be that you don't try to release part of a hierarchy. If there are modules that shouldn't be released, put them elsewhere (and release them individually or as part of another hierarchy). If there are modules that could be released but needn't be released (because they don't contain changes), it's usually easiest to release them anyway rather then bend yourself backwards. On Tue, Jan 10, 2012 at 9:42 AM, Antonio Petrelli antonio.petre...@gmail.com wrote: 2012/1/10 Glenn Silverman gsilver...@dispensingsolutionsinc.com Why not use the maven-release-plugin to eliminate the manual process, you might wonder? Great, then I have to modify each POMs scm element whenever I do a SNAPSHOT-to-RELEASE, and, unless I use module inheritance in my POMs at some point, the release plugin isn't going to recurse through all of the changed modules for me. I think you answered yourself. Move to a multi-module POM+. Moreover, you wrote about a complex application made up of several wars, besides other artifacts. Do you mean that, in the end, you have a single EAR? Antonio - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org
Re: Newbie - EAR plugin can't find my war file.
It may help if you explicitly marked the dependency as being of type war, since it looks like it's looking for a jar of the same group/artifactId. On Tue, May 12, 2009 at 11:15 PM, KurtG ku...@serent.com wrote: I did a 'mvn install' my web app module with no problems and my war file is definitely in my ~/.m2 repository. However, when I build my ear, I get this: Missing: -- 1) my.xxx.company:SideWinderWeb:jar:3.1-snapshot But, it's not a 'jar'; it's a 'war' file. However, my pom clearly lists it as a webModule: webModule groupIdmy.xxx.company/groupId artifactIdSideWinderWeb/artifactId classifiernone/classifier contextRootSideWinderWeb/contextRoot /webModule and a dependency: dependency groupIdmy.xxx.company/groupId artifactIdSideWinderWeb/artifactId version${project.version}/version /dependency The pom for 'SideWinderWeb' has packaging as a 'war' file.Ideas? --Kurt -- View this message in context: http://www.nabble.com/Newbie---EAR-plugin-can%27t-find-my-war-file.-tp23510712p23510712.html Sent from the Maven - Users mailing list archive at Nabble.com. - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org
Re: Multimodule release with same version for everything and dependency version update
if you make project B dependent on project A with a version of ${project.version} it will inherit the version of the parent pom (just like the build for B does). On Thu, Apr 30, 2009 at 5:05 PM, Baptiste MATHUS m...@batmat.net wrote: Hi all, I'm currently stuck in a problem of chicken and egg problem. I already read and thought a lot about it. But as I don't think I'll find the best way alone, I'm trying the list. I've read again the following recent thread http://www.nabble.com/Version-Number-Inheritance-td23304326.html but if I read it correctly it doesn't speak about the problem I'm encountering : managing the dependency versions. Obviously speaking about the dependencies included in the release being done. I hope I'm being clear :-/. Let's explain a bit more the problem with a description and some excerpt of my poms. I want to release a multimodule project with the same version (as Spring does, for example. They have a bunch of jars, but they always are synced with the same 2.5.1 or so when released. It's far simpler to manage it when you need many jars of org.springframework). The thing is some of those modules depend on each other. So when releasing them I want to update the dependencies version when it is one of the modules being released. And I want to do it with the littlest set of command. For example, with something like mvn --batch-mode release:prepare -DautoVersionSubmodules=true -DreleaseVersion=2.3.0 -DdevelopmentVersion=2.4.0-SNAPSHOT But this won't work in one pass currently because of the dependencies between modules. Simplified, it gives the following. * parent pom ** projectA ** projectB, which depends on projectA PARENT POM : project groupIdfr.ourcompany/groupId artifactIdour-parent/artifactId version2.3.0-SNAPSHOT/version packagingpom/packaging ... modules module../projectA/module module../projectB/module /modules /project Project A project parent groupIdfr.ourcompany/groupId artifactIdour-parent/artifactId version2.3.0-SNAPSHOT/version relativePath../our-parent/relativePath /parent groupIdfr.ourcompany/groupId artifactIdprojectA/artifactId ... /project ProjectB project parent groupIdfr.ourcompany/groupId artifactIdour-parent/artifactId version2.3.0-SNAPSHOT/version relativePath../our-parent/relativePath /parent groupIdfr.ourcompany/groupId artifactIdprojectA/artifactId dependencies dependency artifactIdprojectA/artifactId version2.3.0-SNAPSHOT/version dependency /dependencies ... /project When 2.3.0 is released, projectB 2.3.0 must have its dependency to projectA set to 2.3.0 too. And set to 2.4.0-SNAPSHOT in the next development version (according to the parameter value up in this mail). I feel maven-release-plugin could handle this quite correctly. What is the best way to handle this? Obviously, I'll be happy to write a documentation about this kind of release if I'm able to do it. Thanks in advance. Cheers. -- Baptiste Batmat MATHUS - http://batmat.net Sauvez un arbre, Mangez un castor !