ant-ivy-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Kirby Files <>
Subject Re: Is there a real(!) advantage of Ivy over placing the depends in the VCS
Date Fri, 11 Sep 2009 13:45:09 GMT
Sebastian Krysmanski wrote on 09/11/2009 04:16 AM:
> So the tradeoff is:
> * without Ivy: slower initial checkout; but easier to use (works out of the
> box) and easier to manage (simply place every necessary library in the VCS
> repository)
> * with Ivy: faster initial checkout; but not as easy to use (need to run Ivy
> at least once; need to run Ivy every time the dependencies' versions change)
> and more "difficult" to manage (it's prudent to setup a private repository
> which must be maintained/managed in some way)

I wouldn't really agree with this summary, but YMMV. Most people on 
this list have come to find Ivy because of the issues they faced with 
their previous build systems. Since you aren't seeing issues right 
now, you are unlikely to find the learning curve of Ivy worthwhile.

One thing that I haven't seen discussed, however, in this thread, is 
synchronization of dependencies between build (Ant) and devlopment 
(Eclipse). Before Ivy, we had a terrible time keeping classpaths in 
sync. We'd have to update build scripts to check for the presence of 
required jars, and also add the jars to the Eclipse project. The 
latter task was frequently done haphazardly by junior developers in a 
way that was specific to their own environment. The result was that a 
developer checking out a project for the first time had some work to 
do getting the classpath correct to be able to compile the project 
within Eclipse (the build system was in better shape, since Continuous 
Integration ensured the classpath was OK -- plus Ant has filesets).

With the IvyDE plugin, this is hugely improved. All dependencies are 
managed in the ivy.xml, which provides the classpath for both the 
build system and the IDE.

BTW, with regards to what you see as a headache (maintaining an Ivy 
repository or relying on the availability of a thirdparty repo), you 
may want to consider the IvySvn resolver, which stores your 
"repository" in SVN for you, not unlike the way you do it today -- 
except with extra metadata to improve indirect dependency resolution.

Kirby Files
Software Architect
Masergy Communications

View raw message