Gradle, Grapes, Ivy and Maven

View: New views
2 Messages — Rating Filter:   Alert me  

Gradle, Grapes, Ivy and Maven

by Russel Winder-4 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Just an item of feedback, and I guess a minor irritation.

Between Gradle (which tends to have multiple copies of each and every
jar it needs), Ivy (which has lots of jars as well), Maven (which tends
to download the entire universe of jars at any possible opportunity),
and Grapes which stores jars separately again from anything to do with
Gradle, Ivy, or Maven, I am ending up with large numbers of copies of
the same jars.  Whilst disc is cheap this really is just profligate.

Given that Gradle and Grapes use Ivy, I don't see why there has to be so
many copies of the jars, why not just one in the Maven repository and
one in the Ivy repository?

I can see why there might need to be separate metadata, that's not the
point at issue, the point is that there should only be one copy of the
jar for each transport mechanism, not each application.

--
Russel.
=============================================================================
Dr Russel Winder      Partner
                                            xmpp: russel@...
Concertant LLP        t: +44 20 7585 2200, +44 20 7193 9203
41 Buckmaster Road,   f: +44 8700 516 084   voip: sip:russel.winder@...
London SW11 1EN, UK   m: +44 7770 465 077   skype: russel_winder


signature.asc (204 bytes) Download Attachment

Parent Message unknown Re: [groovy-dev] Gradle, Grapes, Ivy and Maven

by Russel Winder-4 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Wed, 2009-09-16 at 10:40 +0200, Graeme Rocher wrote:
> For what it is worth in the new Grails dependency resolution impl
> (based on Ivy) we chose to use the standard Ivy repo

Looking at the Grapes source there seems to have been a plan at some
stage to use transports other than Ivy and so a decision seems to have
been made to have a Grapes cache so as to unify across different
transports.  In the end only Ivy is ever used so I guess this was a
YAGNI situation.

I think Grapes should be changed to use Ivy and to use the Ivy cache.

Is anyone out there feeling responsible for Grapes?

> Cheers
>
> On Wed, Sep 16, 2009 at 10:05 AM, Russel Winder
> <russel.winder@...> wrote:
> > Just an item of feedback, and I guess a minor irritation.
> >
> > Between Gradle (which tends to have multiple copies of each and every
> > jar it needs), Ivy (which has lots of jars as well), Maven (which tends
> > to download the entire universe of jars at any possible opportunity),
> > and Grapes which stores jars separately again from anything to do with
> > Gradle, Ivy, or Maven, I am ending up with large numbers of copies of
> > the same jars.  Whilst disc is cheap this really is just profligate.
> >
> > Given that Gradle and Grapes use Ivy, I don't see why there has to be so
> > many copies of the jars, why not just one in the Maven repository and
> > one in the Ivy repository?
> >
> > I can see why there might need to be separate metadata, that's not the
> > point at issue, the point is that there should only be one copy of the
> > jar for each transport mechanism, not each application.
> >
> > --
> > Russel.
> > =============================================================================
> > Dr Russel Winder      Partner
> >                                            xmpp: russel@...
> > Concertant LLP        t: +44 20 7585 2200, +44 20 7193 9203
> > 41 Buckmaster Road,   f: +44 8700 516 084   voip: sip:russel.winder@...
> > London SW11 1EN, UK   m: +44 7770 465 077   skype: russel_winder
> >
>
>
>
--
Russel.
=============================================================================
Dr Russel Winder      Partner
                                            xmpp: russel@...
Concertant LLP        t: +44 20 7585 2200, +44 20 7193 9203
41 Buckmaster Road,   f: +44 8700 516 084   voip: sip:russel.winder@...
London SW11 1EN, UK   m: +44 7770 465 077   skype: russel_winder


signature.asc (204 bytes) Download Attachment