Hi Nick,

Thanks for the questions, I'll try to explain.

The parent pom aggregates a library (jar) from different and sometimes 
interdependent  modules. The parent pom checks out the module sources with the 
poms and compiles them into a single jar.

I was using the modules pattern in in the parent pom to make the BOM easier 
(less confusing) to manage. I was also using scm plugin for multi-module 
checkouts.  Independently, multi-module builds and multi-module checkouts work 
perfectly. 

When I mix the SCM plugin with the multi-module build, reactor first checks if 
the module's poms exist prior to checkout. I was wondering whether there was a 
way to defer the pom check until after checkout. After reviewing reactor code, 
I found that is not possible without changes.

It looks like the release plugin interacts with reactor in a complimentary 
process. 


On 2019/03/24 11:31:28, Nikki Novak <europi...@hotmail.com> wrote: 
> Gary,
> 
> Having modules residing in other repositories is not a problem...
> 
> ...but why do they not have a pom.xml ?
> 
> ...Is the POM on a different branch ?
> ...Are the modules using ANT or gradle instead ?
> ...Are you auto-generating POMs ?
> 
> Like, I'm really scratching my head trying to figure out what is going on 
> here ?
> 
> If the only thing you need to do is checkout, then you could add a git 
> submodule and add the folder to the maven aggregator ?
> The git submodule always points to a specific commit (until you update the 
> reference).
> 
> Would that be a viable option for your purpose(s) ?
> 
> Nick
> 
> ________________________________
> From: garym@ <oedata.com ga...@oedata.com>
> Sent: Sunday, March 24, 2019 1:26 AM
> To: users@maven.apache.org
> Subject: Re: Need help.. How to configure POM for multi-module checkout
> 
> Hi Karl,
> 
> Thank you for replying on mail server. and thanks for sending me the links to 
> you project poms. They look awesome.
> 
> The is a difference between your projects and my situation. Your projects all 
> the modules reside in the same repository. In my case, they reside in 
> different repositories.
> 
> I elected to use the scm plugin because it allows me to select branches and 
> tags, based on the project and development requirements. I didn't suspect 
> reactor would check for poms before executing the life cycle.
> 
> I'm sure this has been solved  by someone in the past. I just don't know how 
> to solve it using maven. I can solve it with a bunch of execute blocks, but 
> that is very ugly. I'm going to look at the release plugin and a few others
> 
> It's likely I'm using the wrong plugin or I'm missing a plugin.
> 
> BTW, I like your iterator plugin
> 
> cheers
> gary
> 
> 
> 
> 
> On 2019/03/23 23:56:48, Karl Heinz Marbaise <khmarba...@gmx.de> wrote:
> > Hi,
> >
> > I will give you the same answer as on StackOverflow.
> >
> > The way you are going sounds wrong...
> >
> > As I already suggested is the way to go creating a multi module build
> > which comprises of several modules which is located within a single Git
> > repository. this can be build by using a single command.
> >
> >
> > mvn clean package
> >
> > from the root location..
> >
> > https://github.com/khmarbaise/javaee
> > https://github.com/khmarbaise/supose
> >
> > Kind regards
> > Karl Heinz Marbaise
> >
> > On 24.03.19 00:35, Gary M wrote:
> > > Hi,
> > >
> > > I need some help with scm checking out multiple modules and building them.
> > > I have several projects I'm consolidating into  a single jar.  Reactor
> > > checks for module poms before generate-sources executes.
> > >
> > > How do I fix this issue ?
> > >
> > > thanks..
> > > g
> > >
> > > POM sample to give you an idea of what I've done.
> > >    <plugins>
> > >      <plugin>
> > >        <groupId>org.apache.maven.plugins</groupId>
> > >        <artifactId>maven-scm-plugin</artifactId>
> > >        <version>1.9.4</version>
> > >        <executions>
> > >          <execution>
> > >            <id>mod-1</id>
> > >            <phase>generate-sources</phase>
> > >            <configuration>
> > >              <connectionUrl>${mod-1.url}</connectionUrl>
> > >              <scmVersionType>${mod-1.versionType}</scmVersionType>
> > >              <scmVersion>${mod-1.version}</scmVersion>
> > >              <checkoutDirectory>${mod-1.directory}</checkoutDirectory>
> > >            </configuration>
> > >            <goals>
> > >              <goal>checkout</goal>
> > >            </goals>
> > >          </execution>
> > >          <execution>
> > >            <id>mod-2</id>
> > >            <phase>generate-sources</phase>
> > >            <configuration>
> > >              <connectionUrl>${mod-2.url}</connectionUrl>
> > >              <scmVersionType>${mod-2.versionType}</scmVersionType>
> > >              <scmVersion>${mod-2.version}</scmVersion>
> > >              <checkoutDirectory>${mod-2.directory}</checkoutDirectory>
> > >            </configuration>
> > >            <goals>
> > >              <goal>checkout</goal>
> > >            </goals>
> > >          </execution>
> > >        </executions>
> > >
> > > .....
> > >
> > > </build>
> > >
> >
> > ---------------------------------------------------------------------
> > 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

Reply via email to