You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@accumulo.apache.org by Benson Margulies <bi...@gmail.com> on 2012/03/13 21:14:32 UTC

assembly pom

<src>${project.parent.relativePath}/lib</src>

What's that expected to do?

I belatedly spotted these, which are something I've never seen before.
Then I tried to build in here and ran into the lack of
src/assemble/dist.xml (conventional name would be
src/assembly/dist.xml).

Re: assembly pom

Posted by Benson Margulies <bi...@gmail.com>.
On Wed, Mar 14, 2012 at 9:31 AM, Billie J Rinaldi
<bi...@ugov.gov> wrote:
> If the lib directory were moved to target/lib, where would it appear in the tar.gz that is created?  It is convenient to have the locations match, because then we can run testing out of our accumulo workspaces.

How important is the 'the tree always looks like an installation'? I'm
thinking about other ways than the current jar plugin business to
accomplish this, but if it's not important, it would be easiest to let
the assemble project do all of this. If it is important, I'll see what
I can come up with. If the default execution of the assemble project
was to *rapidly* copy everything into place, for example, and only the
-Passemble profile bothered with tarballs?

>
> Billie
>
>
> ----- Original Message -----
>> From: "Benson Margulies" <bi...@gmail.com>
>> To: accumulo-dev@incubator.apache.org
>> Sent: Tuesday, March 13, 2012 7:10:33 PM
>> Subject: Re: assembly pom
>> On Tue, Mar 13, 2012 at 6:25 PM, David Medinets
>> <da...@gmail.com> wrote:
>> > On Tue, Mar 13, 2012 at 4:21 PM, Keith Turner <ke...@deenlo.com>
>> > wrote:
>> >> I do not know how it happens, but somehow the jars generated by
>> >> some
>> >> of the child projects end up in the top level lib dir. Could that
>> >> be
>> >> what this was doing?
>> >
>> > The question is answered in the top-level pom.xml file. There is a
>> > maven-jar-plugin section that sets outputDirectory to be ../../lib.
>> > Thus the jar files are placed into the top-level lib directory. I'd
>> > suggest this value be changed to ../../target/lib. And after the
>> > extra
>> > src level is removed, then ../target/lib or simply target/lib.
>>
>> Unless we want to do all this the 'conventional' way ... which would
>> have the disadvantage of not building up the lib directory (or the
>> target/lib directory) incrementally.

Re: assembly pom

Posted by Eric Newton <er...@gmail.com>.
It would be nice to be able to build/run things like the examples without
having the whole honkin' tree checked out.

Maybe we can just modify the default developer config to point to the
various jar files in the target directories, that way we don't even look in
the common lib directory except on machines where the assembly tarball has
been unpacked.

-Eric

On Thu, Mar 15, 2012 at 8:59 AM, Keith Turner <ke...@deenlo.com> wrote:

> On Wed, Mar 14, 2012 at 1:48 PM, Benson Margulies <bi...@gmail.com>
> wrote:
> > On Wed, Mar 14, 2012 at 11:02 AM, John Vines <jo...@ugov.gov>
> wrote:
> >> We run it in the svn structure, which makes testing easy. I would like
> to
> >> be able to avoid building and packaging it just to run it.
> >
> >
> > How about if we just take the config out of the top-level pom, and put
> > it into the specific poms that actually build the jars that belong in
> > lib? That way the examples won't go dropping jars in surprising
> > places.
> >
>
> I like that.
>

Re: assembly pom

Posted by Keith Turner <ke...@deenlo.com>.
On Wed, Mar 14, 2012 at 1:48 PM, Benson Margulies <bi...@gmail.com> wrote:
> On Wed, Mar 14, 2012 at 11:02 AM, John Vines <jo...@ugov.gov> wrote:
>> We run it in the svn structure, which makes testing easy. I would like to
>> be able to avoid building and packaging it just to run it.
>
>
> How about if we just take the config out of the top-level pom, and put
> it into the specific poms that actually build the jars that belong in
> lib? That way the examples won't go dropping jars in surprising
> places.
>

I like that.

Re: assembly pom

Posted by Benson Margulies <bi...@gmail.com>.
On Wed, Mar 14, 2012 at 11:02 AM, John Vines <jo...@ugov.gov> wrote:
> We run it in the svn structure, which makes testing easy. I would like to
> be able to avoid building and packaging it just to run it.


How about if we just take the config out of the top-level pom, and put
it into the specific poms that actually build the jars that belong in
lib? That way the examples won't go dropping jars in surprising
places.

>
> Sent from my phone, so pardon the typos and brevity.
> On Mar 14, 2012 1:47 PM, "Benson Margulies" <bi...@gmail.com> wrote:
>
>> On Wed, Mar 14, 2012 at 9:31 AM, Billie J Rinaldi
>> <bi...@ugov.gov> wrote:
>> > If the lib directory were moved to target/lib, where would it appear in
>> the tar.gz that is created?  It is convenient to have the locations match,
>> because then we can run testing out of our accumulo workspaces.
>>
>> How important is the 'the tree always looks like an installation'? I'm
>> thinking about other ways than the current jar plugin business to
>> accomplish this, but if it's not important, it would be easiest to let
>> the assemble project do all of this. If it is important, I'll see what
>> I can come up with. If the default execution of the assemble project
>> was to *rapidly* copy everything into place, for example, and only the
>> -Passemble profile bothered with tarballs?
>>
>> >
>> > Billie
>> >
>> >
>> > ----- Original Message -----
>> >> From: "Benson Margulies" <bi...@gmail.com>
>> >> To: accumulo-dev@incubator.apache.org
>> >> Sent: Tuesday, March 13, 2012 7:10:33 PM
>> >> Subject: Re: assembly pom
>> >> On Tue, Mar 13, 2012 at 6:25 PM, David Medinets
>> >> <da...@gmail.com> wrote:
>> >> > On Tue, Mar 13, 2012 at 4:21 PM, Keith Turner <ke...@deenlo.com>
>> >> > wrote:
>> >> >> I do not know how it happens, but somehow the jars generated by
>> >> >> some
>> >> >> of the child projects end up in the top level lib dir. Could that
>> >> >> be
>> >> >> what this was doing?
>> >> >
>> >> > The question is answered in the top-level pom.xml file. There is a
>> >> > maven-jar-plugin section that sets outputDirectory to be ../../lib.
>> >> > Thus the jar files are placed into the top-level lib directory. I'd
>> >> > suggest this value be changed to ../../target/lib. And after the
>> >> > extra
>> >> > src level is removed, then ../target/lib or simply target/lib.
>> >>
>> >> Unless we want to do all this the 'conventional' way ... which would
>> >> have the disadvantage of not building up the lib directory (or the
>> >> target/lib directory) incrementally.
>>

Re: assembly pom

Posted by John Vines <jo...@ugov.gov>.
We run it in the svn structure, which makes testing easy. I would like to
be able to avoid building and packaging it just to run it.

Sent from my phone, so pardon the typos and brevity.
On Mar 14, 2012 1:47 PM, "Benson Margulies" <bi...@gmail.com> wrote:

> On Wed, Mar 14, 2012 at 9:31 AM, Billie J Rinaldi
> <bi...@ugov.gov> wrote:
> > If the lib directory were moved to target/lib, where would it appear in
> the tar.gz that is created?  It is convenient to have the locations match,
> because then we can run testing out of our accumulo workspaces.
>
> How important is the 'the tree always looks like an installation'? I'm
> thinking about other ways than the current jar plugin business to
> accomplish this, but if it's not important, it would be easiest to let
> the assemble project do all of this. If it is important, I'll see what
> I can come up with. If the default execution of the assemble project
> was to *rapidly* copy everything into place, for example, and only the
> -Passemble profile bothered with tarballs?
>
> >
> > Billie
> >
> >
> > ----- Original Message -----
> >> From: "Benson Margulies" <bi...@gmail.com>
> >> To: accumulo-dev@incubator.apache.org
> >> Sent: Tuesday, March 13, 2012 7:10:33 PM
> >> Subject: Re: assembly pom
> >> On Tue, Mar 13, 2012 at 6:25 PM, David Medinets
> >> <da...@gmail.com> wrote:
> >> > On Tue, Mar 13, 2012 at 4:21 PM, Keith Turner <ke...@deenlo.com>
> >> > wrote:
> >> >> I do not know how it happens, but somehow the jars generated by
> >> >> some
> >> >> of the child projects end up in the top level lib dir. Could that
> >> >> be
> >> >> what this was doing?
> >> >
> >> > The question is answered in the top-level pom.xml file. There is a
> >> > maven-jar-plugin section that sets outputDirectory to be ../../lib.
> >> > Thus the jar files are placed into the top-level lib directory. I'd
> >> > suggest this value be changed to ../../target/lib. And after the
> >> > extra
> >> > src level is removed, then ../target/lib or simply target/lib.
> >>
> >> Unless we want to do all this the 'conventional' way ... which would
> >> have the disadvantage of not building up the lib directory (or the
> >> target/lib directory) incrementally.
>

Re: assembly pom

Posted by Billie J Rinaldi <bi...@ugov.gov>.
If the lib directory were moved to target/lib, where would it appear in the tar.gz that is created?  It is convenient to have the locations match, because then we can run testing out of our accumulo workspaces.

Billie


----- Original Message -----
> From: "Benson Margulies" <bi...@gmail.com>
> To: accumulo-dev@incubator.apache.org
> Sent: Tuesday, March 13, 2012 7:10:33 PM
> Subject: Re: assembly pom
> On Tue, Mar 13, 2012 at 6:25 PM, David Medinets
> <da...@gmail.com> wrote:
> > On Tue, Mar 13, 2012 at 4:21 PM, Keith Turner <ke...@deenlo.com>
> > wrote:
> >> I do not know how it happens, but somehow the jars generated by
> >> some
> >> of the child projects end up in the top level lib dir. Could that
> >> be
> >> what this was doing?
> >
> > The question is answered in the top-level pom.xml file. There is a
> > maven-jar-plugin section that sets outputDirectory to be ../../lib.
> > Thus the jar files are placed into the top-level lib directory. I'd
> > suggest this value be changed to ../../target/lib. And after the
> > extra
> > src level is removed, then ../target/lib or simply target/lib.
> 
> Unless we want to do all this the 'conventional' way ... which would
> have the disadvantage of not building up the lib directory (or the
> target/lib directory) incrementally.

Re: assembly pom

Posted by Benson Margulies <bi...@gmail.com>.
On Tue, Mar 13, 2012 at 6:25 PM, David Medinets
<da...@gmail.com> wrote:
> On Tue, Mar 13, 2012 at 4:21 PM, Keith Turner <ke...@deenlo.com> wrote:
>> I do not know how it happens, but somehow the jars generated by some
>> of the child projects end up in the top level lib dir.  Could that be
>> what this was doing?
>
> The question is answered in the top-level pom.xml file. There is a
> maven-jar-plugin section that sets outputDirectory to be ../../lib.
> Thus the jar files are placed into the top-level lib directory. I'd
> suggest this value be changed to ../../target/lib. And after the extra
> src level is removed, then ../target/lib or simply target/lib.

Unless we want to do all this the 'conventional' way ... which would
have the disadvantage of not building up the lib directory (or the
target/lib directory) incrementally.

Re: assembly pom

Posted by David Medinets <da...@gmail.com>.
On Tue, Mar 13, 2012 at 4:21 PM, Keith Turner <ke...@deenlo.com> wrote:
> I do not know how it happens, but somehow the jars generated by some
> of the child projects end up in the top level lib dir.  Could that be
> what this was doing?

The question is answered in the top-level pom.xml file. There is a
maven-jar-plugin section that sets outputDirectory to be ../../lib.
Thus the jar files are placed into the top-level lib directory. I'd
suggest this value be changed to ../../target/lib. And after the extra
src level is removed, then ../target/lib or simply target/lib.

Re: assembly pom

Posted by Keith Turner <ke...@deenlo.com>.
I do not know how it happens, but somehow the jars generated by some
of the child projects end up in the top level lib dir.  Could that be
what this was doing?

On Tue, Mar 13, 2012 at 4:14 PM, Benson Margulies <bi...@gmail.com> wrote:
> <src>${project.parent.relativePath}/lib</src>
>
> What's that expected to do?
>
> I belatedly spotted these, which are something I've never seen before.
> Then I tried to build in here and ran into the lack of
> src/assemble/dist.xml (conventional name would be
> src/assembly/dist.xml).

Re: assembly pom

Posted by Benson Margulies <bi...@gmail.com>.
On Tue, Mar 13, 2012 at 5:35 PM, Benson Margulies <bi...@gmail.com> wrote:
> On Tue, Mar 13, 2012 at 5:00 PM, Billie J Rinaldi
> <bi...@ugov.gov> wrote:
>> On Tuesday, March 13, 2012 4:14:32 PM, "Benson Margulies" <bi...@gmail.com> wrote:
>>> <src>${project.parent.relativePath}/lib</src>
>>>
>>> What's that expected to do?
>>
>> So ... how does it usually work?  Where do jars end up?
>>
>>> I belatedly spotted these, which are something I've never seen before.
>>> Then I tried to build in here and ran into the lack of
>>> src/assemble/dist.xml (conventional name would be
>>> src/assembly/dist.xml).
>
> Two phenomena here.
>
> 1) A typical project structure lets poms land in the individual

oops, 'lets jars', not 'lets poms'

> targets and in the local repo, instead of the interesting config of
> the maven-jar-plugin here. Then, an 'assemble'-type project uses
> dependencySets in the assembly plugin to herd them into the
> distribution hierarchy.
>
> 2) ${project.parent.relativePath} is prone to end with ".pom", so most
> people would just define their own property to contain '..' or '../..'
> or whatever they needed.

Re: assembly pom

Posted by Benson Margulies <bi...@gmail.com>.
On Tue, Mar 13, 2012 at 5:00 PM, Billie J Rinaldi
<bi...@ugov.gov> wrote:
> On Tuesday, March 13, 2012 4:14:32 PM, "Benson Margulies" <bi...@gmail.com> wrote:
>> <src>${project.parent.relativePath}/lib</src>
>>
>> What's that expected to do?
>
> So ... how does it usually work?  Where do jars end up?
>
>> I belatedly spotted these, which are something I've never seen before.
>> Then I tried to build in here and ran into the lack of
>> src/assemble/dist.xml (conventional name would be
>> src/assembly/dist.xml).

Two phenomena here.

1) A typical project structure lets poms land in the individual
targets and in the local repo, instead of the interesting config of
the maven-jar-plugin here. Then, an 'assemble'-type project uses
dependencySets in the assembly plugin to herd them into the
distribution hierarchy.

2) ${project.parent.relativePath} is prone to end with ".pom", so most
people would just define their own property to contain '..' or '../..'
or whatever they needed.

Re: assembly pom

Posted by Billie J Rinaldi <bi...@ugov.gov>.
On Tuesday, March 13, 2012 4:14:32 PM, "Benson Margulies" <bi...@gmail.com> wrote:
> <src>${project.parent.relativePath}/lib</src>
> 
> What's that expected to do?

So ... how does it usually work?  Where do jars end up?

> I belatedly spotted these, which are something I've never seen before.
> Then I tried to build in here and ran into the lack of
> src/assemble/dist.xml (conventional name would be
> src/assembly/dist.xml).

Re: assembly pom

Posted by Billie J Rinaldi <bi...@ugov.gov>.
On Tuesday, March 13, 2012 4:14:32 PM, "Benson Margulies" <bi...@gmail.com> wrote:
> <src>${project.parent.relativePath}/lib</src>
> 
> What's that expected to do?

I think the assemble module is pulling things in from the root directory ${project.parent.relativePath} that other modules are putting there.

> I belatedly spotted these, which are something I've never seen before.
> Then I tried to build in here and ran into the lack of
> src/assemble/dist.xml (conventional name would be
> src/assembly/dist.xml).

This would now be assemble/dist.xml.

Billie