I had remembered looking this up and thought I would share my finding with
you:
http://stackoverflow.com/questions/5558785/maven-release-plugin-git-and-the
-poms-not-at-the-top
Basically theres a
<configuration>
<pomFileName>subdir/pom.xml</pomFileName>
</configuration>
That you need to define as part of your plugin definition.
Thanks,
Roy Lyons
Senior Configuration Engineer
On 10/15/12 1:17 PM, "Matthew Adams" <[email protected]> wrote:
>Hi all,
>
>I'm trying to visualize how to perform a release properly, given that
>
>* I'm using git with git-flow on a
>* multi-module maven project with a
>* parent pom module that is located in a sibling directory to the
>other modules which are
>* located in a directory other than the git repository's root directory.
>
>The docs for using the maven-release-plugin seem a little sparse when
>used with multi-module maven projects like mine. For example, my git
>repo's root directory (the one containing the .git directory) has a
>subdirectory called "production/app". The multi-module root pom is at
>production/app/pom.xml, and looks like this:
>
><project xmlns="http://maven.apache.org/POM/4.0.0"
>xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
>http://maven.apache.org/maven-v4_0_0.xsd">
> <modelVersion>4.0.0</modelVersion>
> <groupId>org.example</groupId>
> <artifactId>app-root</artifactId>
> <packaging>pom</packaging>
> <version>0.2.0.BUILD-SNAPSHOT</version>
> <name>Application Multimodule Root POM</name>
>
> <modules>
> <module>parent-pom</module>
> <module>test-support</module>
> <module>support</module>
> <module>domain</module>
> <module>dto</module>
> <module>service</module>
> <module>rest</module>
> <module>web</module>
> </modules>
></project>
>
>Note that it basically only contains <module> entries, one of which is
>the parent-pom module, which is in the directory
>production/app/parent-pom (the parent pom is then
>production/app/parent-pom/pom.xml) and all of the other modules in the
>project, then, declare the relative path to the parent pom to be
>"<relativePath>../parent-pom/pom.xml</relativePath>". Now, I'm trying
>to use the maven-release-plugin with this project along with git-flow.
> I'm planning on using the following settings, which I've seen in
>several posts on using it with git-flow:
>
> <plugin>
> <groupId>org.apache.maven.plugins</groupId>
> <artifactId>maven-release-plugin</artifactId>
> <version>2.3.2</version>
> <configuration>
>
> <autoVersionSubmodules>true</autoVersionSubmodules>
> <localCheckout>true</localCheckout>
> <pushChanges>false</pushChanges>
>
> <tagNameFormat>v@{project.version}</tagNameFormat>
> </configuration>
> </plugin>
>
>* Into which pom do I put this plugin configuration: the root pom
>(production/app/pom.xml) or the parent pom
>(production/app/parent-pom/pom.xml)?
>* Into which root or parent's section should this <plugin> section be
>placed: <build><pluginManagement><plugins> or <build><plugins>?
>
>Here's my <scm> section (I'm using "xxx" & "yyy" protect the innocent):
>
> <scm>
> <connection>scm:git:[email protected]:xxx/yyy.git</connection>
>
> <developerConnection>scm:git:[email protected]:xxx/yyy.git</developerConnec
>tion>
> <url>https://github.com/xxx/yyy</url>
> </scm>
>
>* How do I tell maven that this maven project is located off of the
>repo's root, in production/app? Do I use
>"scm:git:[email protected]:xxx/yyy.git/production/app" or something else?
>
>* Into which pom do I put the <scm> section: the root pom, the parent
>pom, or in each module's pom? If the root pom, do I use
>"scm:git:[email protected]:xxx/yyy.git/production/app"? If the parent
>pom, do I use
>"scm:git:[email protected]:xxx/yyy.git/production/app/parent-pom"?
> If in each module's pom, do I use
>"scm:git:[email protected]:xxx/yyy.git/production/app/module_name"?
>
>* Into which pom to I put the <distributionManagement> section: the
>root pom, the parent pom, or each module's pom?
>
>* After I issue my "git flow release start 0.2.0.RELEASE" in my dev
>branch's production/app directory, in which directory (after switching
>to the release/0.2.0.RELEASE branch, of course) do I issue the command
>"mvn release:prepare release:perform": production/app or
>production/app/parent-pom?
>
>--
>mailto:[email protected]
>skype:matthewadams12
>googletalk:[email protected]
>http://matthewadams.me
>http://www.linkedin.com/in/matthewadams
>
>---------------------------------------------------------------------
>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]