Ivy itself uses tools like emma and checkstyle in it's own build.xml.
We don't add them into our ivy.xml file, but we use them directly in our
build.xml like this:
<ivy:cachepath organisation="checkstyle" module="checkstyle"
revision="4.3"
inline="true" conf="default" pathid="checkstyle.classpath"
transitive="true"
log="download-only"/>
<taskdef resource="checkstyletask.properties"
classpathref="checkstyle.classpath" />
<checkstyle ... />
Maarten
----- Original Message ----
From: Niklas Matthies <[EMAIL PROTECTED]>
To: [email protected]
Sent: Tuesday, October 28, 2008 8:27:40 PM
Subject: Re: Using ivy to resolve in-build tools
On Tue 2008-10-28 at 12:08h, Benjamin Damm wrote on ivy-user:
:
> I'm looking for help with resolving dependencies for tools found in a build
> file but that are not dependencies for the project being built.
:
> It seems that what we need is an ivy.xml just for these tools that is
> separate
> from the ivy.xml of the project that is being compiled. Any help here?
The usual solution is to use different configurations. See here:
http://ant.apache.org/ivy/history/trunk/terminology.html#configurations
http://ant.apache.org/ivy/history/trunk/concept.html
http://ant.apache.org/ivy/history/trunk/tutorial/conf.html
http://ant.apache.org/ivy/history/trunk/ivyfile/configurations.html
In addition, you might want to turn the shared build-tools.xml into a
module of its own, so that its tool jar dependencies can be maintained
in one place, as dependencies of this new "build-tools" module. Then
the individual project modules can simply depend on the build-tools
module in their private "build" configuratione. If not all projects
use all tools, again you can use configurations, this time on the
build-tools module, to define different tool sets.
-- Niklas Matthies