I do this by starting the build using a local repository that is
completely empty to start with.  At the end of the build, the local
repository is completely populated with all artifacts that were
downloaded from central repositories, plus artifacts that were built and
installed using the "install" target.

Then I just zip up the local repository and save it.

There are arguments to the mvn command, plus environment variables, that
let you specify to build "offline", using only the contents of the local
repository.  From there on, just unzip and use that local repository and
do "offline" builds. 

--Marilyn

-----Original Message-----
From: David Smiley @MITRE.org [mailto:[email protected]] 
Sent: Friday, May 15, 2009 2:07 PM
To: [email protected]
Subject: Re: [maven 2] assembly: repository from multiple modules


Hi; thanks for your interest.

The goal is to get a zip file that internally has the structure of a
maven repository containing every artifact referenced by the project.  I
need to do this because I need to install/develop software in an
environment that does not have network access.  I have a multi-module
project.  The parent pom is just a pom and it has the maven assembly
plugin defined and references an assembly configuration that uses the
repositories element. 
It's standard stuff.  On single-module projects this works fine -- I've
used the assembly plugin before.  But for a multi-module project, it
just doesn't seem to work.  It seemed to me after lots of trial and
error that I could get the assembly plugin to generate assemblies of
binaries and source of the entire project using moduleset, but not a
repository structure of all artifacts.

I dug into the source code and debugged a bit.  At the parent level pom
where the assembly plugin is invoked, it does *NOT* recursively look at
the modules to get their dependencies.  It just looks for dependencies
of the parent pom itself.  I imminently intend to fork this plugin for
my own purposes so that the getDependencieds() (or whatever method it
was when I was debugging -- I forget) recursively pulls in all
dependencies of child modules.

~ David



Baptiste MATHUS wrote:
> 
> Reading all this didn't let me with a sense of understanding, if you 
> see what I mean.
> Could you try and rephrase your need?
> 
> Cheers
> 
> 2009/5/15 David Smiley @MITRE.org <[email protected]>
> 
>>
>> Any update to this?  I've tried a bunch of combinations.  I think at 
>> this point I'm going to try and hack the latest source to meet my
needs.
>>
>> ~ David
>>
>>
>> Hal Hildebrand-3 wrote:
>> >
>> > I have a large, multiple module project that I need to create a
>> repository
>> > assembly for.  I have no problems creating the binary, including 
>> > the dependencies. However, I can't seem to create a repository.  
>> > I'm
>> running
>> > the
>> > assembly in the project's top level pom, of course, but from what I

>> > can tell, there seems to be no way to indicated to use all the sub 
>> > modules
>> -
>> > i.e. The only way to create the repository seems to be be placing 
>> > all
>> the
>> > dependencies in the top level pom.  Obviously, this will be a 
>> > nightmare
>> to
>> > maintain.  Also, since the binary assembly seems perfectly capable 
>> > of including the sub module's binaries and dependencies, it would 
>> > seem
>> that
>> > the
>> > repository assembly should be able to do the same.
>> >
>> > Falling short of actually creating the repository for one reason or

>> > another, if I could get the format of the binary assembly to be 
>> > identical to the repository layout, that would be sufficient for my

>> > needs as I don't
>> need
>> > the
>> > maven repository metadata.  Right now, I've tried using no 
>> > outputfile format, with simply a directory - doesn't work.  I've
also tried using:
>> > ${groupId}/${artifactId} as the directory - kind of works, but now 
>> > I
>> have
>> > .'s instead of /'s in the repository group id directory.
>> >
>> > Surely this is possible through some machination or incantation,
right?
>> >
>> >
>> >
>> > -------------------------------------------------------------------
>> > -- To unsubscribe, e-mail: [email protected]
>> > For additional commands, e-mail: [email protected]
>> >
>> >
>> >
>>
>> --
>> View this message in context:
>> http://www.nabble.com/-maven-2--assembly%3A-repository-from-multiple-
>> modules-tp8505848p23566098.html Sent from the Maven - Users mailing 
>> list archive at Nabble.com.
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [email protected]
>> For additional commands, e-mail: [email protected]
>>
>>
> 
> 
> --
> Baptiste <Batmat> MATHUS - http://batmat.net Sauvez un arbre, Mangez 
> un castor !
> 
> 

--
View this message in context:
http://www.nabble.com/-maven-2--assembly%3A-repository-from-multiple-mod
ules-tp8505848p23567293.html
Sent from the Maven - Users mailing list archive at Nabble.com.


---------------------------------------------------------------------
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]

Reply via email to