3. The Ivy Java library

3.1. What is it?

The Ivy Java library (aka libivy-java or fr.dgac.ivy) is a Java package that allows you to connect applications to an Ivy bus. You can use it to write applications in Java. You can also use it to integrate any thread-safe Java application on an Ivy bus. So far, this library has been tested and used on a variety of Java virtual machines (from 1.1.7 to 1.4.2), and on a variety of architectures (GNU/Linux, Solaris, Windows NT,XP,2000, MacOSX).

The Ivy Java library was originally developed by François-Régis Colin and is now maintained by Yannick Jestin at CENA within a group at CENA (Toulouse, France).

3.2. Getting and installing the Ivy Java library

You can get the latest versions of the Ivy C library from the Ivy web site. It is packaged either as a jar file or as a debian package. We plan to package it according to different distribution formats, such as .msi (Windows) or .rpm (Redhat and Mandrake linux). Contributors are welcome for package management.

The package is mainly distributed as a jar file. In order to use it, either add it in your CLASSPATH environment variable, put the it in your $JAVA_HOME/jre/lib/ext/ directory, or C:\Program Files\JavaSoft\... for Windows. The best way to avoid mistakes is to put it in the command line each time you want to use ivy $ java -classpath .:/path/to/ivy.jar:/path/to/regexp.jar:/path/to/getopt.jar className

The package contains the documentation, the sources and the class files for the fr.dgac.ivy package, alongside with examples and a couple of useful tools, IvyDaemon and Probe. You will need the Apache Jakarta project regexp library and the gnu getopt library. Those could be included in the jar file, but not in the debian package.

In order to test the presence of Ivy on your system once installed, run the following command:

$ java fr.dgac.ivy.Probe
If should display a line about broadcasting on a strange address, this is OK and means it is ready and working. If it complains about a missing class ( java.lang.NoClassDefFoundError ), then you have not pointed your virtual machine to the jar file or your installation is incomplete.