I've run into a similar situation and I'll explain how I resolved this problem. There are two way's that I've solved this, both of which are used to inform the reactor of the inter-module dependency: 1) Simply add SomeModuleWAR to your dependency list. This is generally a good idea to help the reactor resolve the dependency order (I'm guessing it's worked so far since you've declared your modules in the order you expect) as well as make the artifact available in the reactor for the release. This has an awkward side affect of listing the dependency twice, once in the unpack declaration and once in the dependency section. 2) Use dependency:unpack-dependencies and declare SomeModuleWAR in your dependency list. If you have more than just this SomeModuleWAR as a dependency you're probably going to want to use the includeArtifactIds configuration. This ensures that you only declare the full dependency once and don't have to worry about versions being out of line.
My understanding is that by using the dependency:unpack this is not participating in dependency resolution in the reactor, only checking if the artifact is in your local repo. Personally I prefer to use the second approach since I don't like the redundant declaration of the full dependency information. Hope that helps. Jamie. On Wed, 2008-12-17 at 23:15 +0100, da...@davidkarlsen.com wrote: > Hi - we have a classical jee setup with jar/war/ear and a ws-client > dep: ear <- war <- jar > > the ws-client is part of the same multimodule as the others - same parent > and all. > > The ws-client has: > > <build> > <plugins> > <plugin> > <artifactId>maven-dependency-plugin</artifactId> > <executions> > <execution> > <phase>generate-sources</phase> > <goals> > <goal>unpack</goal> > </goals> > <configuration> > <artifactItems> > <artifactItem> > <groupId>${project.groupId}</groupId> > <artifactId>SomeModuleWAR</artifactId> > <type>war</type> > <version>${project.version}</version> > </artifactItem> > </artifactItems> > <includes>**/*.wsdl</includes> > </configuration> > </execution> > </executions> > </plugin> > > > inside it (to unpack wsdls and generate clients). > > I fI do release:prepare -DdryRun=true on the whole multimodule it's OK. > It fails when doing release:prepare for real - because the SomeModuleWAR > is not available in local repo because the default prepare goals are: > clean verify : > http://maven.apache.org/plugins/maven-release-plugin/prepare-mojo.html#preparationGoals > > now - why does this fail? does the dependency plugin check for the > artifact before it'sr eally executed? because clean verify should not > trigger generate-sources - where the dep. is needed: > http://cvs.peopleware.be/training/maven/maven2/buildLifecyclePhases.html > > Anybody else hit this? > > -- > David J. M. Karlsen - +47 90 68 22 43 > http://www.davidkarlsen.com > http://mp3.davidkarlsen.com > > --------------------------------------------------------------------- > To unsubscribe, e-mail: dev-unsubscr...@maven.apache.org > For additional commands, e-mail: dev-h...@maven.apache.org > ------------------------------------------------------------------------------------------------------------------- CONFIDENTIALITY NOTICE: This e-mail and any files attached may contain confidential and proprietary information of Alcatel-Lucent and/or its affiliated entities. Access by the intended recipient only is authorized. Any liability arising from any party acting, or refraining from acting, on any information contained in this e-mail is hereby excluded. If you are not the intended recipient, please notify the sender immediately, destroy the original transmission and its attachments and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Copyright in this e-mail and any attachments belongs to Alcatel-Lucent and/or its affiliated entities.