<?xml version="1.0" encoding="UTF-8"?>
<project>
  <pomVersion>3</pomVersion>
  <artifactId>jmeter-chain</artifactId>
  <name>JMeter chain</name>
  <groupId>org.apache.jackrabbit</groupId>
  <currentVersion>1.0-dev</currentVersion>
  <organization />
  <inceptionYear>2005</inceptionYear>
  <logo>/images/logo.gif</logo>
  <repository />
  <mailingLists>
    <mailingList>
      <name>${pom.name} Dev List</name>
    </mailingList>
    <mailingList>
      <name>${pom.name} User List</name>
    </mailingList>
  </mailingLists>
  <dependencies>
    <dependency>
      <groupId>commons-chain</groupId>
      <artifactId>commons-chain</artifactId>
      <version>1.0</version>
      <type>jar</type>
    </dependency>
    <!--
      cqfs-jackrabbit and cqfs are optional runtime dependencies 
      (an alternative FileSystem implementation); 
      commons-logging is a dependency of cqfs
    -->
    <dependency>
      <groupId>commons-collections</groupId>
      <artifactId>commons-collections</artifactId>
      <version>3.1</version>
      <type>jar</type>
    </dependency>
    <dependency>
      <groupId>commons-beanutils</groupId>
      <artifactId>commons-beanutils</artifactId>
      <version>1.7.0</version>
      <type>jar</type>
    </dependency>
    <dependency>
      <groupId>jmeter</groupId>
      <artifactId>ApacheJMeter_core</artifactId>
      <version>2.0.3</version>
      <type>jar</type>
      <url>http://jakarta.apache.org/jmeter/</url>
    </dependency>
    <dependency>
      <groupId>jmeter</groupId>
      <artifactId>ApacheJMeter_java</artifactId>
      <version>2.0.3</version>
      <type>jar</type>
      <url>http://jakarta.apache.org/jmeter/</url>
    </dependency>
    <dependency>
      <groupId>jmeter</groupId>
      <artifactId>jorphan</artifactId>
      <version>2.0.3</version>
      <type>jar</type>
    </dependency>
    <dependency>
      <groupId>avalon</groupId>
      <artifactId>avalon-logkit</artifactId>
      <version>1.2</version>
      <type>jar</type>
      <url>http://avalon.apache.org</url>
    </dependency>
    <dependency>
      <groupId>commons-jexl</groupId>
      <artifactId>commons-jexl</artifactId>
      <version>1.0</version>
      <type>jar</type>
    </dependency>
  </dependencies>
  <build>
    <sourceDirectory>src/java</sourceDirectory>
    <unitTestSourceDirectory>src/test</unitTestSourceDirectory>
    <unitTest>
      <includes>
        <include>**/*Test.java</include>
      </includes>
    </unitTest>
  </build>
</project>

