views:

68

answers:

1

I am using Ivy to resolve my dependencies. We have a big share space where all the libraries we use live and are retrieved from as needed.

Very occasionally we need to add some additional files to an existing library version. For example we recently started to use the charting components in a UI library. We hadn't previously needed them so I took the relevant DLLs and copied them into the share space with the existing UI DLLs.

However running ivy doesn't pick these additions up by default, presumably because they are locally cached on my machine and ivy only does a version check to see whether it already has version x.y.z of library a. It doesn't check whether version x.y.z of library a has changed in the ivy repository.

Is there a way of getting ivy to check the repository for structural changes to a library rather than just checking the local cache?

I tried using <ivy:resolve refresh="true"/> but that didn't seem to do anything.

Thanks.

+2  A: 

If you change the content of a dependency, shouldn't its version number also change? If the dependency is still in flux, maybe you should look into snapshots.

jackrabbit
Generally I would agree but because this is an external library the version isn't actually changing we are just wanting to use more components of the libraries (more DLLs). We don't want to do dump everything in because it will significantly increase the size of the final build.
Mike Q
I see. What we have done in similar situations is to make separate artifacts of each part of the external library. You can then depend just on the parts you want.
jackrabbit