The build system requires an Eclipse plugin for Ivyto be installed and setup in each development environment to make project dependencies easier for developers and the build system to manage. *The* *IvyDE* plugin may be installed through the standard Eclipse Install/Update (Help->Software Updates->Find and Install...) mechanism by adding the Ivy update site . This plugin allows management of dependencies through use of an "ivy.xml" file. While it does not completely take the place of the Eclipse classpath file, it does move the majority of library management to Ivy. Ivy will pull dependencies from an internal repository and then if not found it will look in our google code repository.

Ivy is dependent upon a configuration (ivysettings.xml) file to define repository locations. After installing the IvyDE Eclipse plugin within Eclipse go to *"Window->Preferences->Ivy"* set the* *URL to point to the "ivysettings.xml" file. This file tells Ivy where to locate our  dependency libraries. After pointing to this configuration file the IvyDEplugin will be able to retrieve all defined dependencies. Note that if the Ivy plugin option to "Do a retrieve after resolve" is checked then dependencies will be copied to the folder defined in the Pattern text box after being downloaded to your local cache. This is not necessary since the Ivy plugin will point to your local Ivy cache in the classpath and the build scripts are designed to copy the dependencies as needed.

Ivy setup with Eclipse

If you do not have a need to execute Ant build scripts from within Eclipse, but would like to ignore build file problems you may set the preference to ignore build file problems under "Window->Preferences->Ant->Editor->Problems tab".

If you want to execute the Ant build scripts from within Eclipse you will first need to change your Eclipse Ant runtime to point to Ant 1.7 or newer. 

After installing the IvyDEplugin into Eclipse it may give error popups when trying to retrieve inter-project dependencies. This is due to the dependency being defined on a packaged version of the project. If the dependency is upon a "latest.integration" revision and you haven't deployed the dependent project to your local repository then you'll get the popup. This error is also caused when the dependency is upon a "latest.release" revision and a release has not yet been published to the internal archive. You can either ignore the popups, which will not cause any problems in development since a dependency on the raw project should be defined in your Eclipse classpath, or choose to publish the dependency locally by executing the "publish.local" Ant build target of the project. This may be remedied in the future when/if our continuous integration server publishes integration snapshots to our internal archive.

Lastly, here are a couple related screen casts which will help:


Ivy Repository keeps changing, the new update site has been updated however, there is some issues with the downloaded jar therefore please download this jar for the ivyide plugin and place it in /path/to/eclipse/plugins/org.apache.ivyde.eclipse_2.0.0.beta1 for now.

To Refresh Ivy dependancies:

ant ivyclear
ant dist

To resolve the dependancies run as described in part 2 of Paul's blog

ant"java6, eclipse" dist