2.4. Building and Running IRIS

Note that parts of the IRIS build require a working internet connection. For example, the Javadocs link to other public APIs, and the docbooks link to external resources.

2.4.1. Directory structure

The module "iris" contains the following directory structure:

iris/bin

Contains base configuration files and iris.bat/iris.sh

iris/src

Contains the main build.xml file used to build IRIS

iris/src/docbook

Contains DocBook source for IRIS docs.

iris/src/java

Java source code for core IRIS services

iris/lib

Contains third-party libraries used by IRIS

iris/doc

IRIS documentation

iris/test

Testing source for running IRIS unit tests

iris/thirdparty

Contains IRIS source that is specific to using third-party applications.

iris/universal

Contains the source and build system for the IRIS Universal Libraries.

2.4.2. Ant Tasks

The main IRIS Ant build file is located at iris/src/build.xml. The following Ant tasks exist:

Note: when building IRIS it is recommended to set ANT_OPTS=-mx1024m or else the build can fail
ant clean

Cleans all distribution including IRIS and IRIS plugin output. One of the goals of the IRIS build is that the following procedure results in a clean CVS state:.

  1. Clean CVS Checkout

  2. "ant test"

  3. Run IRIS in "Full Configuration"

  4. Shut down IRIS

  5. "ant clean"

After these 5 steps the IRIS CVS wil be in the exact state it was checked out in, with no modified, missing or new files (this also assumes 'ant test' succeeds). Furthermore, it is also a goal that after running "ant test" a CVS update shows no modified files. Note: this procedure is currently checked by hand occasionally and not automatically verified with the nightly build.

ant

Builds all of IRIS and all IRIS Plugins. This task does not run unit tests. Use "ant test" for this.

ant distrib

Will build a zip file in iris/dest/ of the distribution and documentation.

ant test

Builds IRIS and runs all unit tests. See the testing chapter for more information.

Note that running unit tests requires port 5007 to be available (used to run unit tests in debugging mode)
ant validate-ontology

Will validate all OWL files in iris/data (recursively) using Pellet. The IRIS build also runs this task.

ant generate-pojos

Manually generates POJOs for ontolgoy usage documentation. The IRIS build also runs this task. POJOs are described in more detail later in this document.

ant generate-task-params

Generates PubSub task parameters. The IRIS build runs this task automatically. Task Parameters are described later in this document.

ant build-minimal

Builds only iris/src and no plugins. This task is useful when just the core IRIS is updated because building all the plugins can take a while even if the plugins are already built.

2.4.3. Nightly Builds

IRIS has a nightly build process which builds and runs unit tests To download nightly build installers and/or source packages visit http://www.openiris.org/download. To see the results of the nightly build unit tests, visit http://www.openiris.org/downloads/IRIS-nightly/doc-current/dest/test/html/

2.4.4. Running IRIS

Once built, IRIS can be run from iris/bin/iris.bat (Windows) or iris/bin/iris.sh (Mac, Linux).

This document is not intended to be a user guide, and so no further documentation for using IRIS is provided except where appropriate in documenting the IRIS architecture.