My issue is the same as Dave's.  The behavior we see is when a build is
started, if an external dependency has changed, that dependency is
downloaded, removed from the gradle cache and re-added for every sub-project
that uses the dependency.  Our current project has around 60 sub-projects so
we see the same dependency being removed, downloaded, and re-added to the
gradle cache 60 times.  I would have expected the dependency to download
once and then all of the remaining sub-projects make use of it.

I am suspicious that the configuration phase is run telling all of the
sub-projects that the dependency is stale.  After the first sub-project
runs, the information is not updated so every project assumes a stale
dependency and updates it.  Does this sound correct?

Perhaps it is an issue with the way we are setting it up.  We are adding
repositories within a custom plugin that is applied to the sub-project block
of the root script.   This means that each sub-project gets the same
repositories added.  Would this cause a problem?

--Ken


On Tue, Dec 14, 2010 at 4:49 PM, Dave King <[email protected]> wrote:

> Thanks for the information guys.
>
> Robert it looks like that only works for mavenRepos, we're seeing this
> behavior with
> org.apache.ivy.plugins.resolver.URLResolver
>
> so there is no timeout snapshot method to call.
>
> We're looking at moving away from the snapshot approach to a unique
> version per build.  Hopefully that will fix this issue.
>
> - Peace
> Dave
>
>
>
> On Tue, Dec 14, 2010 at 12:17 PM, Robert Fischer
> <[email protected]> wrote:
> > This is a problem with snapshots, not repositories.  By default, the
> > cache is never used for snapshots because, y'know, they're snapshots
> > and subject to change.  Try setting the snapshot timeout to one minute
> > and see if that solves the repeated downloads in a single build:
> > http://www.mail-archive.com/[email protected]/msg05444.html
> >
> > ~~ Robert.
> >
> > On 10 December 2010 13:42, Dave King <[email protected]> wrote:
> >> So we have a large project that uses multiple sub projects and uses
> >> jars that we produce from other separate projects in house.  When we
> >> update one of the core jars we see each sub project do a download of
> >> the jar.
> >>
> >> so for each sub project we see:
> >>
> >> Download
> http://buildmaster:8081/nexus/content/groups/public-snapshots/com.elluminate.classroom/classroom-util/1.0-SNAPSHOT/ivy.xml
> >> Download
> http://buildmaster:8081/nexus/content/groups/public-snapshots/com.elluminate.classroom/classroom-util/1.0-SNAPSHOT/classroom-util-1.0-SNAPSHOT-sources.jar
> >> Download
> http://buildmaster:8081/nexus/content/groups/public-snapshots/com.elluminate.classroom/classroom-util/1.0-SNAPSHOT/classroom-util-1.0-SNAPSHOT.jar
> >>
> >> I would have expected that we'd see that once and then it would be
> >> found in the cache.  Is this expected behavior or do we have a
> >> problem?
> >>
> >> This isn't a big deal for those of who are on the LAN with the build
> >> master machine, but we're spread from Vancouver to New York and we're
> >> trying to speed up the build for remote users.
> >>
> >> - Peace
> >> Dave
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe from this list, please visit:
> >>
> >>    http://xircles.codehaus.org/manage_email
> >>
> >>
> >>
> >
> > ---------------------------------------------------------------------
> > To unsubscribe from this list, please visit:
> >
> >    http://xircles.codehaus.org/manage_email
> >
> >
> >
>
> ---------------------------------------------------------------------
> To unsubscribe from this list, please visit:
>
>    http://xircles.codehaus.org/manage_email
>
>
>

Reply via email to