You are viewing a plain text version of this content. The canonical link for it is here.
Posted to ivy-user@ant.apache.org by vb...@scdi.org on 2009/09/11 11:19:31 UTC
Re: Is there a real(!) advantage of Ivy over placing the depends
in the VCS
Sebastian,
> recently someone recommended Ivy to me because he saw that we were hosting
> our project dependencies in our Subversion repository.
When I see axis.jar in a VCS system, I always ask the question: "do
you know which version it is?". If you're serious about managing the
3rd party libraries, you should be able to answer the question
precisely.
You want to upgrade a library from 1.0 to 2.0: how do you remove all
transitive dependencies from the 1.0 version? This may not be an
issue if you have 3-4 jars to manage, but our application has about
100 direct and indirect dependencies.
You want to test a new version of that library first: you can to it by
changing just one line in the ivy.xml file and test locally. The
upgrade doesn't work: just revert your single change.
> However I see a major disadvantage over dependencies in a VCS repository: If
> a project is dormant for a longer period of time an artifact (i.e. a
> library) may longer be available (in a certain, required version or the
> repository may not exist anymore).
If you download all your dependencies from a Maven repository (check
the ivyroundup project on googlecode) you are immune to that problem
(as long as the library is available on that repo; but it's Maven's
point).
Hope this help
-Vladimir
Re: AW: Is there a real(!) advantage of Ivy over placing the
depends in the VCS
Posted by vb...@scdi.org.
>> If you download all your dependencies from a Maven repository (check
>> the ivyroundup project on googlecode) you are immune to that problem
>> (as long as the library is available on that repo; but it's Maven's
>> point).
>
> For me, that's true. But if anyone else (who hasn't done this) wants to
> compile the project he/she can't do this if the dependency has gone.
I meant "using the remove Maven repository" (as in
http://repo1.maven.org/maven2/) and not "creating your own repository".
Your dependency is now on having access to the Maven repository *the
very first time* you compile the project. But since you need to have
access to the Internet to download the project in the first place, you
also have access to the internet when you compile the project.
Since Ivy caches the dependencies you can later develop without being online.
-Vladimir
AW: Is there a real(!) advantage of Ivy over placing the depends in the VCS
Posted by Sebastian Krysmanski <se...@krysmanski.de>.
> > However I see a major disadvantage over dependencies in a VCS
repository: If
> > a project is dormant for a longer period of time an artifact (i.e. a
> > library) may longer be available (in a certain, required version or the
> > repository may not exist anymore).
> If you download all your dependencies from a Maven repository (check
> the ivyroundup project on googlecode) you are immune to that problem
> (as long as the library is available on that repo; but it's Maven's
> point).
For me, that's true. But if anyone else (who hasn't done this) wants to
compile the project he/she can't do this if the dependency has gone.