On 9/27/2010 6:29 AM, Marshall Schor wrote: > Here's what I think I've learned. > > The release plugin operates in an unusual way, in that there are two > invocations > of work, the "outer" invocation, and an "inner" one. > > The inner one is evidenced in the output by having output lines to the console > that have two prefixes: > > [INFO] [INFO] message... > > The inner one is run with profiles that can be set using the release plugin's > configuration parameters: > > <useReleaseProfile>false</useReleaseProfile> > <arguments>-Papache-release</arguments> > > These settings *do-not* affect the running of the "outer" invocation. > > The outer invocation, when passed a multi-module configuration, does a couple > of > interesting things: > > 1) it sets itself up so it SKIPS all the module processing. You can see this > in > the build at the end, where it displays a summary of the build steps, and it > shows all the other modules in the build with a line: > [INFO] ...name... SKIPPED
Here's how it does that: Each "mojo" (corresponds to a "goal") in the release plugin which operates this way, is annotated with "@aggregator". See http://www.sonatype.com/books/mvnref-book/reference/writing-plugins-sect-plugin-descriptor.html and search for "aggregator". -Marshall Schor <http://www.sonatype.com/books/mvnref-book/reference/writing-plugins-sect-plugin-descriptor.html> > 2) Nevertheless, it uses all the information about all of the projects in the > Reactor, to walk through all of them, and do various operations on all of > them. > These include manipulating the poms to new versions. (This information is > also > used during release:clean - to clean up all the submodules.) > > This is why it is able to find and update inter-dependent sets of modules, at > -SNAPSHOT levels, and update all of them. > > The message "There are still some remaining snapshot dependencies" - comes > after > the inter-dependent set of modules have been processed to update from the > -SNAPSHOT levels. This the meaning of the word *still*, here. > > This message isn't given if all of the -SNAPSHOTs were resolved during the > processing of all the modules in the Reactor in the "outer" invocation. > > > Maybe one of the implementors of the release plugin can confirm this theory > :-). > > -Marshall > > On 9/26/2010 5:45 AM, Antonio Petrelli wrote: >> 2010/9/26 Marshall Schor <[email protected]>: >>> I guess the super-pom turning on apache-release happened after my <profile> >>> in >>> my top level aggregator project was "processed", maybe... (not sure about >>> this). >> Mmm... Here it is: >> https://repository.apache.org/service/local/repositories/releases/content/org/apache/apache/7/apache-7.pom >> The only relevant thing I see is a different configuration of the deploy >> plugin: >> <updateReleaseInfo>true</updateReleaseInfo> >> >> Antonio >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: [email protected] >> For additional commands, e-mail: [email protected] >> >> >> > --------------------------------------------------------------------- > To unsubscribe, e-mail: [email protected] > For additional commands, e-mail: [email protected] > > >
