You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@ant.apache.org by "Karr, David" <da...@wamu.net> on 2008/11/13 01:38:02 UTC

Use Ivy or Maven Ant tasks for dependencies?

I've used both Ant and Maven, and I'm convinced that Maven is a burden
that is only worthwhile if you really need all of its features.  One of
the big reasons people use Maven is for dependency download and
management (and sometimes the only reason).  That's one thing it's good
for.  In the Ant world, I've noticed Ivy as an alternative, if
dependency management is all you want from it.  I recently noticed that
it's just as easy to use Ant for your build scripts, but simply use the
Maven Ant tasks to get dependencies.  I believe that Ivy still provides
some other advantages, like referencing non-standard repositories, but I
don't know how important that is.

>From the Ant-ers point of view, are there any other advantages or
disadvantages to either approach (using Ivy, or using the Maven Ant
tasks)?

Re: Use Ivy or Maven Ant tasks for dependencies?

Posted by Gilles Scokart <gs...@gmail.com>.
2008/11/13 Karr, David <da...@wamu.net>:
> I've used both Ant and Maven, and I'm convinced that Maven is a burden
> that is only worthwhile if you really need all of its features.  One of
> the big reasons people use Maven is for dependency download and
> management (and sometimes the only reason).  That's one thing it's good
> for.

I don't completely agree.  I think most maven user use maven for their
plugins.  And that's the thing that maven is good for : propse some
high level plugin that build your project according some good
practice.

>In the Ant world, I've noticed Ivy as an alternative, if
> dependency management is all you want from it.  I recently noticed that
> it's just as easy to use Ant for your build scripts, but simply use the
> Maven Ant tasks to get dependencies.  I believe that Ivy still provides
> some other advantages, like referencing non-standard repositories, but I
> don't know how important that is.
>

An other advantage is the possibility to define your own scope (named
conf in ivy), and the scope mapping.  With maven, your compile
dependencies are transitive.  Maven doesn't know "interface" scope.
Maven can not group optional dependencies by giving them a name (what
you can do using an ivy configuration).
Also, the conflict resolution in maven is quiet weak.  They select the
first version they found (nearest alrgotithm).  Ivy allows to
configure different conflict manager.

Note, that maven is enhancing with the use of Mercury (a new library
that do dependency managment).  But AFAIK, it is not yet ready.

> From the Ant-ers point of view, are there any other advantages or
> disadvantages to either approach (using Ivy, or using the Maven Ant
> tasks)?
>



-- 
Gilles Scokart

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@ant.apache.org
For additional commands, e-mail: user-help@ant.apache.org