Classpath Directive

Description

A classpath directive qualifies the defintion of the enclosing classloader. The enclosing classloader shall be established with the jar resources declared within the classpath. The resulting classloader shall be made available to the enclosing container and subsidiary components (including subsidiary containers). An example of a classpath declaration is included below.

Nested Elements

Element Occurance Description
repository 0..n A logical jar repository (repository development is in progress, as such limitations may apply).
fileset n A fileset directive.

Sample XML (using filesets)

<classpath>
  <fileset dir="lib">
    <include name="avalon-framework.jar"/>
    <include name="logkit.jar"/>
  </fileset>
</classpath>

Sample XML (using a repository)

The following classpath (from the James deployment directive) demonstrates the use of repository based references. A repository contains references to resources within the repository. A repository implementation is responsible for mapping resource directives to physical jar file. The default repository is a file based repository located under the Merlin installation.

<classpath>
  <repository>
    <resource id="avalon-framework:avalon-framework-impl" version="4.1.5-dev"/>
    <resource id="cornerstone-threads:cornerstone-threads-api" version="1.0"/>
    <resource id="cornerstone-sockets:cornerstone-sockets-api" version="1.0"/>
    <resource id="cornerstone-connection:cornerstone-connection-api" version="1.0"/>
    <resource id="cornerstone-scheduler:cornerstone-scheduler-api" version="1.0"/>
    <resource id="cornerstone-datasources:cornerstone-datasources-api" version="1.0"/>
    <resource id="cornerstone-store:cornerstone-store-api" version="1.0"/>
    <resource id="cornerstone-connection:cornerstone-connection-impl" version="1.0"/>
    <resource id="excalibur:excalibur-collections" version="1.0"/>
    <resource id="excalibur-thread:excalibur-thread" version="1.1.1"/>
    <resource id="excalibur-pool:excalibur-pool" version="1.2"/>
    <resource id="james:dnsjava" version="1.3.2"/>
    <resource id="james:mail" version="1.3"/>
    <resource id="james:activation" version="1.0"/>
    <resource id="james:mailet" version="1.0"/>
    <resource id="james:james" version="1.3"/>
  </repository>
</classpath>