Le 26 août 08 à 07:50, akpraha a écrit :
Hi,
I'm pretty much fed up with Maven and wanted to give Ivy a try. I've
installed IvyDE/Ivy into Eclipse 3.4, and after a bit of
configuration have
got it using my local maven repo instead of the public - so far, so
good.
However, when I try to run my ant build from within Eclipse, I get the
following error that the jar file containing the task cannot be
found. I
would expect that Ivy's osgi bundle should be able to contribute a
task to
Eclipse's built-in ant, however it does not appear to do so. I've
seen
various bits of advice to copy ivy.jar to the ant plugin's lib
directory, or
to add it to the Ant classpath in eclipse preferences -- BUT, I
really don't
want to manually maintain the version of Ivy used, esp. when it's
already
being installed automatically by the IvyDE plugin.
Any thoughts on this?
This is an interesting idea.
The ant classpath contribution was done via the IvyDE plugin when it
was packaged with Ivy included. Since Ivy was packaged as a standalone
OSGi bundle, it was not possible anymore for the IvyDE plugin to
contribute to the ant classpath. So to avoid classpath issues, the
solution was taken to remove that contribution and let the user handle
manually.
Now that you are raising your troubles, I think there can be a
solution: make the ivy bundle itself contribute to the ant classpath
of Eclipse. Basically it is just about a plugin.xml and an optional
dependency on org.eclipse.ant.core. There is actually one blocker
issue: the ivy packaging have to change to be a jar in a jar.
I don't know what would be the impact of a such change. This might
deserve a jira entry if you are willing to.
Nicolas
-Andy
BUILD FAILED
/home/andy/projects/www/TournamentWeb/build/build.xml:19: Problem:
failed to
create task or type antlib:org.apache.ivy.ant:retrieve
Cause: The name is undefined.
Action: Check the spelling.
Action: Check that any custom tasks/types have been declared.
Action: Check that any <presetdef>/<macrodef> declarations have
taken place.
This appears to be an antlib declaration.
Action: Check that the implementing library exists in one of:
-/opt/eclipse/eclipse-3.4/plugins/org.apache.ant_1.7.0.v200803061910/
lib
-/home/andy/.ant/lib
-a directory added on the command line with the -lib argument
--
View this message in context:
http://www.nabble.com/%3Civy%3Aretrieve-%3E-task-in-Eclipse-w--IvyDE-tp19156149p19156149.html
Sent from the ivy-user mailing list archive at Nabble.com.