Craig R. McClanahan wrote:

On Sun, 1 Jun 2003, Phil Steitz wrote:



Date: Sun, 01 Jun 2003 09:14:56 -0700
From: Phil Steitz <[EMAIL PROTECTED]>
Reply-To: Jakarta Commons Developers List <[EMAIL PROTECTED]>
To: Jakarta Commons Developers List <[EMAIL PROTECTED]>
Subject: [math] maven magic and build.xml -- how to get ant build working
   again

Our ant build (and hence nightly) is currently broken, since we have
added dependencies on commons-beanutils, bringing along collections and
logging.  I personally have moved to maven entirely, but I thought we
had agreed early on that we would maintain the ability to build from
ant.  Also, Craig pointed out that if we want nightly builds, we need to
have a working build.xml.

I see two ways to handle this:

1. Run maven ant:generate-build and replace build.xml with the result.

This will add a get-deps target telling ant to grab the jars from
ibiblio.org -- e.g.,

<get dest="${libdir}/commons-beanutils-1.5.jar" usetimestamp="true"
ignoreerrors="true"
src="http://www.ibiblio.org/maven/commons-beanutils/jars/commons-beanutils-1.5.jar";>
</get>

This works for me from the command line; but something tells me the
nightly build might not like it and I have no idea whether or not the
whole script has some hidden dependencies on maven.



Commons-FileUpload (among others) has a build.xml generated by Maven, and
it seems to run fine for the nightly builds.  As long as the "clean" and
"dist" targets can be generated, and the output of the "dist" target goes
in to a "dist" subdirectory, Maven-generated build files should be ok.


2. Modify build.xml and build.properties.sample to include
commons-lib.home, commons-beanutils.jar, commons-logging.jar and
commons-collections.jar properties and expect the user (or bot) to fill
these in, grab the jars and put them in the specified directories.

The advantage of 1. is that it guarantees that builds from maven and ant
use the same jars.  The advantage of 2 is that build.xml is simpler and
more standard.

What are other maven-based projects doing to handle this?



I'd definitely go with option 1 -- that way, you don't have to manually
keep the two in sync.  Just regenerate the build.xml when dependencies are
changed.



Phil


Craig



Thanks, Craig.

I will submit a patch.

Phil


--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to