bug: ant update BUILD FAILED Ivy dependency

721 views
Skip to first unread message

rem c. koh

unread,
Nov 23, 2012, 2:02:34 PM11/23/12
to rin...@googlegroups.com
Apache Ivy is not installed by default on everyone's machine, which causes the following error

my:ringojs me$ ant update
Buildfile: /Users/me/dev/java/ringojs/build.xml

update:

BUILD FAILED
/Users/me/dev/java/ringojs/build.xml:59: 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.
No types or tasks have been defined in this namespace yet

This appears to be an antlib declaration.
Action: Check that the implementing library exists in one of:
        -/usr/share/ant/lib
        -/Users/me/.ant/lib
        -a directory added on the command line with the -lib argument

Total time: 0 seconds


I had to download, install (adding ivy to my classpath), in order to be able to run the instructions to install ringo.

rc

Hannes Wallnöfer

unread,
Nov 23, 2012, 2:46:13 PM11/23/12
to RingoJS
I know, it's a bit of a problem. What are the alternatives? Ant + plain HTTP? Maven?

Hannes

2012/11/23 rem c. koh <remko...@gmail.com>


rc

--
You received this message because you are subscribed to the Google Groups "RingoJS" group.
To view this discussion on the web visit https://groups.google.com/d/msg/ringojs/-/HhiTC2MaVysJ.
To post to this group, send email to rin...@googlegroups.com.
To unsubscribe from this group, send email to ringojs+u...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/ringojs?hl=en.

James Cook

unread,
Nov 28, 2012, 10:41:19 AM11/28/12
to rin...@googlegroups.com
You already have a Maven build. Why not use it? 

It took me a long time to like Maven (still don't love it), but it has been rock solid during my 3+ years of writing RingoJS applications. Most of our libraries are deployed as Maven artifacts and auto-discovered by RingoJS at runtime. IMHO, Maven is what brings Maven into an enterprise-level development environment with automated tests and support from most CI servers.

-- jim

James Cook

unread,
Nov 28, 2012, 2:52:45 PM11/28/12
to rin...@googlegroups.com
Sorry, that should read, "Maven is what brings RingoJS into an enterprise-level development environment..."


Bill Lee

unread,
Feb 3, 2013, 5:43:40 PM2/3/13
to rin...@googlegroups.com
Looks like you are using Mac OSX. i would share some of my expereince.

on Debian/Ubuntu and Mac OSX, If you install ant + ivy yourself, you can make ivy lib avaible into your ant lib. but if you use package installation like i do, i..e on Debian/Ubuntu you use apt-get install ant ivy , on Mac OSX, you use port install ant ivy

you will have to do a little tweak yourself, either you run ant with a -lib /path/to/ivy.jar  or you create a symbolic link into ant lib. 

i.e. on Mac OSX you can 

ant jar -lib /opt/local/share/java/ivy.jar 

to run it without touch the system. 

or you dont care about  "polluting" ant lib path,  you can 

ln -s /opt/local/share/java/ivy.jar /usr/share/ant/lib/ivy.jar

Then you can simply say 

ant jar

Reply all
Reply to author
Forward
0 new messages