qpid-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Martin Ritchie" <ritch...@apache.org>
Subject Re: Qpid Java Build Instructions - Trunk (M2+)
Date Wed, 06 Dec 2006 08:12:45 GMT
On 05/12/06, Steve Vinoski <vinoski@iona.com> wrote:
> [Trimming the email thread down for readability]
>
> On Dec 5, 2006, at 7:46 AM, Martin Ritchie wrote:
>
> > On 04/12/06, Steve Vinoski <vinoski@iona.com> wrote:
> >> mvn -Pfastinstall
> >> cd distribution
> >> mvn -Dqpid.targetDir=$QPID_HOME/.. assembly:directory
> >>
> >> (Note, these are UNIX command lines. For Windows, change to a
> >> backslash in the last line.)
> >>
> >> The first line is executed at the top level to do a Java build, as
> >> normal. The "-Pfastinstall" tells it to skip tests, basically, by
> >> invoking the fastinstall profile. You then change to the distribution
> >> directory, and tell it you want the assemblies to go to $QPID_HOME/..
> >> so that the actual new directory contents you're looking for will go
> >> under $QPID_HOME. You will also get the usual tar and zip files under
> >> $QPID_HOME/.. as well, but you'll just be ignoring those anyway.
> >>
> >> This way, you can set QPID_HOME and PATH once, and overwrite their
> >> contents as you make changes and rebuild.
> >>
> >> --steve
> >
> > This doesn't seem to work quite right for me. All the zip/tgz still
> > get built.
> > I did:
> > mvn -Pfastinstall
> > (Wish we could avoid this step and get the dist pom to reference the
> > local checkout.. and re-compile only if required)
>
> You don't have to run this step if you've already built. Just cd to
> the distribution directory and start from there.

If that is the case what code goes in to the distribution? Am I wrong
in thinking that it pulls all the jars from your maven repository? So
if I do a default 'mvn' on my highly suspect development branch then I
go to the clean head checkout distribution directory and run mvn to
generate a zip will I have the code from the head or code from my
suspect development branch?

> Note also that the framing code generation is the biggest culprit in
> terms of the lack of build avoidance. Maven didn't change this -- the
> same problem existed with ant. Every time you build, the framing code
> gets regenerated, and about 100 Java files get recompiled as a
> result. There are also 2 JMS CTS Java files under the client that get
> recompiled every time through, not sure why. These two problems add
> unnecessary time to the build, and again, they existed with ant and
> are not a maven issue. I filed a jira for the JMS CTS problem, but
> didn't for the code gen problem because I figured the new code gen
> stuff would be showing up soon (and hopefully it won't have this
> problem).
>
> > cd distribution
> > mvn -Dqpid.targetDir=c:/tmp/qpid/ assembly:directory
> >
> > Am I doing something wrong that is casuing the zips and tars to be
> > created each time?
>
> No, see my message above, where it says "You will also get the usual
> tar and zip files under $QPID_HOME/.. as well, but you'll just be
> ignoring those anyway." The job of this phase is to produce
> assemblies, so that's what happens. The assembly:directory part
> simply adds the directory as part of what gets produced.

Ah my mistake I thought the assembly:directory part was to do just the
directory build.

> Next to the tars and zips, you should see a directory named qpid-1.0-
> incubating-M2-SNAPSHOT-java-bin.
>
> > Is it possible to stop all the warning messges related to long
> > paths in the zip?
>
> Such warnings are the default, but there's a configuration setting
> for the assembly plugin called tarLongFileMode that can be set to
> "gnu" to make the warnings go away. I'll commit that change shortly,
> unless someone knows of a reason to avoid that setting.

That would be great.

> --steve
>


-- 
Martin Ritchie

Mime
View raw message