On 1/7/07, Joerg Heinicke <[EMAIL PROTECTED]> wrote:

Martin Cooper <martinc <at> apache.org> writes:

> > In general I don't like the need for internet access on build time.
>
> This is a red herring. One way or another, you're going to have to get
the
> jars from the network, whether it's getting them from SVN, or having
Maven
> or Ant retrieve them. And in all of those three cases, once you have
them on
> your local machine, you don't need the network to build the next time.

There is one big difference: With everything in the src jar or at least in
the
svn checkout your requirements are less sophisticated than with the build
system. For src jar I only need a browser, for svn checkout I need a svn
client,
but for Ant and Maven I need additionally Java and the build environment
itself.
And this is a big difference if the machine with internet access is not
your
local machine.

(I speak from experience. In my company I get access to the internet only
via a
terminal server. There is no build environment. For proposed changes in
the
build I need to download all dependencies by hand.)


I would be more concerned about funny-versioned or unversioned jars coming
in to my environment or builds via svn checkouts.  Most corporate
environments control pretty carefully the external jars used in builds -
both the OSS jars from maven repositories and release distributions.  It
makes things easier if when building from source the dependencies are
explicitly versioned release jars, not whatever happens to be come down with
an svn checkout. The good thing about the great work the Ant, Maven and
repository@ people are doing is that it gets us to standardized jar
distribution.

I know that other apache projects have seen fit to put jars into scm and
they have had lots of reasons to do this - almost always to make builds for
users or release management easier.  Up to now, we have pretty much avoided
this in commons and I for one would really like to keep things that way. I
had never noticed the /lib directory in [transaction] before, though, which
seems to have been there for a couple of years.  Maybe Oliver or someone
else can explain why [transaction] really needs those jars in svn.  I see
the geronimo spec jars were added with the comment that they had been
recompiled for JDK 1.3.  If that is necessary, its probably better to first
ask geronimo to produce *different* artifacts that satisfy this, or at least
to rename these reccompiled artifacts.

Phil

Reply via email to