<?xml version="1.0" encoding="UTF-8"?>

<!--
 Licensed to the Apache Software Foundation (ASF) under one
 or more contributor license agreements.  See the NOTICE file
 distributed with this work for additional information
 regarding copyright ownership.  The ASF licenses this file
 to you under the Apache License, Version 2.0 (the
 "License"); you may not use this file except in compliance
 with the License.  You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

 Unless required by applicable law or agreed to in writing,
 software distributed under the License is distributed on an
 "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 KIND, either express or implied.  See the License for the
 specific language governing permissions and limitations
 under the License.
-->

<project>
  <pomVersion>3</pomVersion>
  <name>turbine-2</name>
  <id>turbine</id>
  <currentVersion>2.3.4-dev</currentVersion>
  <organization>
    <name>Apache Software Foundation</name>
    <url>http://turbine.apache.org/</url>
    <logo>/images/turbine-project.png</logo>
  </organization>
  <logo>/images/logo.gif</logo>
  <inceptionYear>2000</inceptionYear>
  <package>org.apache.turbine</package>

  <gumpRepositoryId>jakarta</gumpRepositoryId>

  <shortDescription>A servlet based framework.</shortDescription>
  <description>
    Turbine is a servlet based framework that allows experienced Java
    developers to quickly build secure web applications. Parts of Turbine
    can also be used independently of the web portion of Turbine as
    well. In other words, we strive to make portions of Turbine easily
    available for use in other applications.
  </description>
  <url>http://turbine.apache.org/turbine/turbine-2.3.3/index.html</url>
  <issueTrackingUrl>http://issues.apache.org/jira/browse/TRB</issueTrackingUrl>
  <siteAddress>people.apache.org</siteAddress>
  <siteDirectory>/www/turbine.apache.org/turbine/development/turbine-2.3/</siteDirectory>
  <distributionSite>www.apache.org</distributionSite>
  <distributionDirectory>/www/www.apache.org/dist/java-repository/</distributionDirectory>

  <repository>
    <connection>scm:svn:http://svn.apache.org/repos/asf/turbine/core/branches/TURBINE_2_3_BRANCH/</connection>
    <developerConnection>scm:svn:https://svn.apache.org/repos/asf/turbine/branches/TURBINE_2_3_BRANCH/</developerConnection>
    <url>http://svn.apache.org/viewcvs/turbine/core/branches/TURBINE_2_3_BRANCH/</url>
  </repository>

  <versions>
    <version>
      <name>2.1</name>
      <tag>TURBINE_2_1</tag>
    </version>
    <version>
      <name>2.2</name>
      <tag>TURBINE_2_2_0</tag>
    </version>
    <version>
      <name>2.3-rc1</name>
      <tag>TURBINE_2_3_RC1</tag>
    </version>
    <version>
      <name>2.3-rc2</name>
      <tag>TURBINE_2_3_RC2</tag>
    </version>
    <version>
      <name>2.3</name>
      <tag>TURBINE_2_3</tag>
    </version>
    <version>
      <name>2.3.1-RC1</name>
      <tag>TURBINE_2_3_1_RC1</tag>
    </version>
    <version>
      <name>2.3.1-RC2</name>
      <tag>TURBINE_2_3_1_RC2</tag>
    </version>
    <version>
      <name>2.3.1</name>
      <tag>TURBINE_2_3_1</tag>
    </version>
    <version>
      <name>2.3.2-RC1</name>
      <tag>TURBINE_2_3_2_RC1</tag>
    </version>
    <version>
      <name>2.3.2-RC2</name>
      <tag>TURBINE_2_3_2_RC2</tag>
    </version>
    <version>
      <name>2.3.2</name>
      <tag>TURBINE_2_3_2</tag>
    </version>
    <version>
      <name>2.3.3-RC1</name>
      <tag>TURBINE_2_3_3_RC1</tag>
      <id>2.3.3-RC1</id>
    </version>
    <version>
      <name>2.3.3</name>
      <tag>TURBINE_2_3_3</tag>
      <id>2.3.3</id>
    </version>
  </versions>

  <mailingLists>
    <mailingList>
      <name>Turbine User List</name>
      <subscribe>user-subscribe@turbine.apache.org</subscribe>
      <unsubscribe>user-unsubscribe@turbine.apache.org</unsubscribe>
      <archive>http://mail-archives.apache.org/mod_mbox/turbine-user/</archive>
    </mailingList>
    <mailingList>
      <name>Turbine Developer List</name>
      <subscribe>dev-subscribe@turbine.apache.org</subscribe>
      <unsubscribe>dev-unsubscribe@turbine.apache.org</unsubscribe>
      <archive>http://mail-archives.apache.org/mod_mbox/turbine-dev/</archive>
    </mailingList>
  </mailingLists>

  <developers>
    <developer>
      <name>Jeff Brekke</name>
      <id>brekke</id>
      <email>ekkerbj@yahoo.com</email>
      <organization/>
    </developer>
    <developer>
      <name>Juergen Hoffmann</name>
      <id>hoffmann</id>
      <email>hoffmann@apache.org</email>
      <organization/>
    </developer>
    <developer>
      <name>Dave Bryson</name>
      <id>daveb</id>
      <email>mbryson@mont.mindspring.com</email>
      <organization/>
    </developer>
    <developer>
      <name>Kevin A. Burton</name>
      <id>burton</id>
      <email>burton@relativity.yi.org</email>
      <organization/>
    </developer>
    <developer>
      <name>Eric Dobbs</name>
      <id>dobbs</id>
      <email>dobbs@apache.org</email>
      <organization/>
    </developer>
    <developer>
      <name>Scott Eade</name>
      <id>seade</id>
      <email>seade@backstagetech.com.au</email>
      <organization>Backstage Technologies Pty. Ltd.</organization>
    </developer>
    <developer>
      <name>Fedor Karpelevitch</name>
      <id>fedor</id>
      <email>fedor@karpelevitch.net</email>
      <organization/>
    </developer>
    <developer>
      <name>Sean Legassick</name>
      <id>legassick</id>
      <email>sean@informage.net</email>
      <organization/>
    </developer>
    <developer>
      <name>John McNally</name>
      <id>jmcnally</id>
      <email>jmcnally@collab.net</email>
      <organization>CollabNet, Inc.</organization>
    </developer>
    <developer>
      <name>Quinton McCombs</name>
      <id>quintonm</id>
      <email>quintonm@bellsouth.net</email>
      <organization>NEqualsOne</organization>
      <roles>
        <role>Java Developer</role>
      </roles>
    </developer>
    <developer>
      <name>Martin Poeschl</name>
      <id>mpoeschl</id>
      <email>mpoeschl@marmot.at</email>
      <organization>tucana.at</organization>
    </developer>
    <developer>
      <name>Eric Pugh</name>
      <id>epugh</id>
      <email>epugh@upstate.com</email>
      <organization/>
    </developer>
    <developer>
      <name>Daniel Rall</name>
      <id>dlr</id>
      <email>dlr@finemaltcoding.com</email>
      <organization>CollabNet, Inc.</organization>
    </developer>
    <developer>
      <name>Henning P. Schmiedehausen</name>
      <id>henning</id>
      <email>hps@intermeta.de</email>
      <organization>INTERMETA - Gesellschaft fuer Mehrwertdienste mbH</organization>
      <roles>
        <role>Java Developer</role>
      </roles>
      <timezone>2</timezone>
    </developer>
    <developer>
      <name>Kurt Schrader</name>
      <id>kschrader</id>
      <email>kschrader@karmalab.org</email>
      <organization>University of Michigan</organization>
    </developer>
    <developer>
      <name>Jon Scott Stevens</name>
      <id>jon</id>
      <email>jon@latchkey.com</email>
      <organization>CollabNet, Inc.</organization>
    </developer>
    <developer>
      <name>Thomas Vandahl</name>
      <id>tv</id>
      <email>tv@apache.org</email>
      <organization>TeWiSoft GmbH</organization>
      <roles>
        <role>Java Developer</role>
      </roles>
      <timezone>2</timezone>
    </developer>
  </developers>

  <contributors>
    <contributor>
      <name>Gary Bartlett</name>
      <email>gary_a_bartlett@yahoo.com</email>
    </contributor>
    <contributor>
      <name>Youngho Cho</name>
      <email>youngho@nannet.co.kr</email>
    </contributor>
    <contributor>
      <name>Frank Conradie</name>
      <email>frank@opticode.co.za</email>
    </contributor>
    <contributor>
      <name>Gonzalo A. Diethelm</name>
      <email>gonzalo.diethelm@iname.com</email>
    </contributor>
    <contributor>
      <name>David Duddleston</name>
      <email>david@i2a.com</email>
    </contributor>
    <contributor>
      <name>Christopher Elkins</name>
      <email>celkins@scardini.com</email>
    </contributor>
    <contributor>
      <name>M. Sean Gilligan</name>
      <email>Sean_Gilligan@catalla.com</email>
    </contributor>
    <contributor>
      <name>Jian He</name>
      <email>hjnet@163.net</email>
    </contributor>
    <contributor>
      <name>Humberto Hernandez</name>
      <email>hhernandez@itweb.com.mx</email>
    </contributor>
    <contributor>
      <name>Nissim Karpenstein</name>
      <email>nissim@nksystems.com</email>
    </contributor>
    <contributor>
      <name>Rafal Krzewski</name>
      <email>krzewski@e-point.pl</email>
    </contributor>
    <contributor>
      <name>Chris Kimpton</name>
      <email>kimptoc.mail@bigfoot.com</email>
    </contributor>
    <contributor>
      <name>Brian Lawler</name>
      <email>brian@tribenetwork.com</email>
    </contributor>
    <contributor>
      <name>Josh Lucas</name>
      <email>josh@stonecottage.com</email>
    </contributor>
    <contributor>
      <name>Carl Ludwig</name>
      <email>carl@destinymusic.com</email>
    </contributor>
    <contributor>
      <name>Jonas Mauras</name>
      <email>jm@mediaphil.de</email>
    </contributor>
    <contributor>
      <name>Brett McLaughlin</name>
      <email>bmclaugh@algx.net</email>
    </contributor>
    <contributor>
      <name>Leon Messerschmidt</name>
      <email>leon@opticode.co.za</email>
    </contributor>
    <contributor>
      <name>Chris Meyer</name>
      <email>cmeyer@gatan.com</email>
    </contributor>
    <contributor>
      <name>Steven Nagy</name>
      <email>snagy@web-publicity.com</email>
    </contributor>
    <contributor>
      <name>Kasper Nielsen</name>
      <email>kav@kav.dk</email>
    </contributor>
    <contributor>
      <name>Paul O'Leary</name>
      <email>paul@evolventtech.com</email>
    </contributor>
    <contributor>
      <name>Giacomo Pati</name>
      <email>Giacomo.Pati@pwr.ch</email>
    </contributor>
    <contributor>
      <name>Mark Porter</name>
      <email>mark.porter@canlink.com</email>
    </contributor>
    <contributor>
      <name>Jeff Prickett</name>
      <email>jeffprickett@mindspring.com</email>
    </contributor>
    <contributor>
      <name>Ilkka Priha</name>
      <email>ilkka.priha@simsoft.fi</email>
    </contributor>
    <contributor>
      <name>Cameron Riley</name>
      <email>criley@ekmail.com</email>
    </contributor>
    <contributor>
      <name>Greg Ritter</name>
      <email>greg@shwoop.com</email>
    </contributor>
    <contributor>
      <name>Ingo Schuster</name>
      <email>ingo@raleigh.ibm.com</email>
    </contributor>
    <contributor>
      <name>Costas Stergiou</name>
      <email>csterg@aias.gr</email>
    </contributor>
    <contributor>
      <name>George Stewart</name>
      <email>georgestewart@yahoo.com</email>
    </contributor>
    <contributor>
      <name>Ralf Stranzenbach</name>
      <email>ralf@reswi.ruhr.de</email>
    </contributor>
    <contributor>
      <name>Hakan Tandogan</name>
      <email>hakan42@gmx.de</email>
    </contributor>
    <contributor>
      <name>Scott C. Tavares</name>
      <email>stavares@home.com</email>
    </contributor>
    <contributor>
      <name>John Thorhauer</name>
      <email>john@zenplex.com</email>
    </contributor>
    <contributor>
      <name>Magnús Þór Torfason</name>
      <email>magnus@handpoint.com</email>
    </contributor>
    <contributor>
      <name>Scott Weaver</name>
      <email>sweaver@rippe.com</email>
    </contributor>
  </contributors>

  <licenses>
    <license>
      <name>The Apache Software License, Version 2.0</name>
      <url>http://www.apache.org/licenses/LICENSE-2.0.html</url>
      <distribution>repo</distribution>
    </license>
  </licenses>

  <dependencies>
    <dependency>
      <groupId>avalon-framework</groupId>
      <artifactId>avalon-framework-api</artifactId>
      <version>4.3</version>
      <url>http://excalibur.apache.org/framework/index.html</url>
      <type>jar</type>
      <properties>
        <dist.bundle>true</dist.bundle>
      </properties>
    </dependency>
    <dependency>
      <groupId>avalon-framework</groupId>
      <artifactId>avalon-framework-impl</artifactId>
      <version>4.3</version>
      <url>http://excalibur.apache.org/framework/index.html</url>
      <type>jar</type>
      <properties>
        <dist.bundle>true</dist.bundle>
      </properties>
    </dependency>
    <dependency>
      <groupId>avalon-logkit</groupId>
      <artifactId>avalon-logkit</artifactId>
      <version>2.1</version>
      <url></url>
      <type>jar</type>
      <properties>
        <dist.bundle>true</dist.bundle>
      </properties>
    </dependency>
    <dependency>
      <groupId>commons-beanutils</groupId>
      <artifactId>commons-beanutils-core</artifactId>
      <version>1.7.0</version>
      <url>http://commons.apache.org/beanutils/</url>
      <type>jar</type>
      <properties>
        <dist.bundle>true</dist.bundle>
      </properties>
    </dependency>
    <dependency>
      <groupId>commons-codec</groupId>
      <artifactId>commons-codec</artifactId>
      <version>1.3</version>
      <url>http://commons.apache.org/codec/</url>
      <type>jar</type>
      <properties>
        <dist.bundle>true</dist.bundle>
      </properties>
    </dependency>
    <dependency>
      <groupId>commons-collections</groupId>
      <artifactId>commons-collections</artifactId>
      <version>3.2</version>
      <url>http://commons.apache.org/collections/</url>
      <type>jar</type>
      <properties>
        <dist.bundle>true</dist.bundle>
      </properties>
    </dependency>
    <dependency>
      <groupId>commons-configuration</groupId>
      <artifactId>commons-configuration</artifactId>
      <version>1.5</version>
      <url>http://commons.apache.org/configuration/</url>
      <type>jar</type>
      <properties>
        <dist.bundle>true</dist.bundle>
      </properties>
    </dependency>
    <dependency>
      <groupId>commons-digester</groupId>
      <artifactId>commons-digester</artifactId>
      <version>1.8</version>
      <url>http://commons.apache.org/digester/</url>
      <type>jar</type>
      <properties>
        <dist.bundle>true</dist.bundle>
      </properties>
    </dependency>
    <dependency>
      <groupId>commons-email</groupId>
      <artifactId>commons-email</artifactId>
      <version>1.0</version>
      <url>http://commons.apache.org/email/</url>
      <type>jar</type>
      <properties>
        <dist.bundle>true</dist.bundle>
      </properties>
    </dependency>
    <dependency>
      <groupId>commons-fileupload</groupId>
      <artifactId>commons-fileupload</artifactId>
      <version>1.2.1</version>
      <url>http://commons.apache.org/fileupload/</url>
      <type>jar</type>
      <properties>
        <dist.bundle>true</dist.bundle>
      </properties>
    </dependency>
    <dependency>
      <groupId>commons-io</groupId>
      <artifactId>commons-io</artifactId>
      <version>1.4</version>
      <url>http://commons.apache.org/io/</url>
      <type>jar</type>
      <properties>
        <dist.bundle>true</dist.bundle>
      </properties>
    </dependency>
    <dependency>
      <groupId>commons-lang</groupId>
      <artifactId>commons-lang</artifactId>
      <version>2.4</version>
      <url>http://commons.apache.org/lang/</url>
      <type>jar</type>
      <properties>
        <dist.bundle>true</dist.bundle>
      </properties>
    </dependency>
    <dependency>
      <groupId>commons-logging</groupId>
      <artifactId>commons-logging</artifactId>
      <version>1.1.1</version>
      <url>http://commons.apache.org/logging/</url>
      <type>jar</type>
      <properties>
        <dist.bundle>true</dist.bundle>
      </properties>
    </dependency>
    <dependency>
      <groupId>commons-pool</groupId>
      <artifactId>commons-pool</artifactId>
      <version>1.4</version>
      <url>http://commons.apache.org/pool/</url>
      <type>jar</type>
      <properties>
        <dist.bundle>true</dist.bundle>
      </properties>
    </dependency>
    <dependency>
      <groupId>dom4j</groupId>
      <artifactId>dom4j</artifactId>
      <version>1.6.1</version>
      <url>http://www.dom4j.org/</url>
      <type>jar</type>
      <properties>
        <dist.bundle>true</dist.bundle>
      </properties>
    </dependency>
    <dependency>
      <groupId>ecs</groupId>
      <artifactId>ecs</artifactId>
      <version>1.4.2</version>
      <url>http://jakarta.apache.org/ecs/</url>
      <type>jar</type>
      <properties>
        <dist.bundle>true</dist.bundle>
      </properties>
    </dependency>
    <dependency>
      <groupId>excalibur-component</groupId>
      <artifactId>excalibur-component</artifactId>
      <version>2.1</version>
      <url>http://excalibur.apache.org/</url>
      <type>jar</type>
      <properties>
        <dist.bundle>true</dist.bundle>
      </properties>
    </dependency>
    <dependency>
      <groupId>excalibur-instrument</groupId>
      <artifactId>excalibur-instrument-api</artifactId>
      <version>2.1</version>
      <url>http://excalibur.apache.org/</url>
      <type>jar</type>
      <properties>
        <dist.bundle>true</dist.bundle>
      </properties>
    </dependency>
    <dependency>
      <groupId>excalibur-logger</groupId>
      <artifactId>excalibur-logger</artifactId>
      <version>2.1</version>
      <url>http://excalibur.apache.org/logger.html</url>
      <type>jar</type>
      <properties>
        <dist.bundle>true</dist.bundle>
      </properties>
    </dependency>
    <dependency>
      <groupId>excalibur-pool</groupId>
      <artifactId>excalibur-pool-api</artifactId>
      <version>2.1</version>
      <url>http://excalibur.apache.org/</url>
      <type>jar</type>
      <properties>
        <dist.bundle>true</dist.bundle>
      </properties>
    </dependency>
    <dependency>
      <groupId>fulcrum</groupId>
      <artifactId>fulcrum-yaafi</artifactId>
      <version>1.0.5</version>
      <url>http://turbine.apache.org/fulcrum/fulcrum-yaafi/</url>
      <type>jar</type>
      <properties>
        <dist.bundle>true</dist.bundle>
      </properties>
    </dependency>
    <dependency>
      <groupId>javax.activation</groupId>
      <artifactId>activation</artifactId>
      <version>1.1.1</version>
      <url>http://java.sun.com/javase/technologies/desktop/javabeans/jaf/</url>
      <type>jar</type>
    </dependency>
    <dependency>
      <groupId>javax.mail</groupId>
      <artifactId>mail</artifactId>
      <version>1.4.1</version>
      <url>http://java.sun.com/products/javamail/</url>
      <type>jar</type>
    </dependency>
    <dependency>
      <groupId>oro</groupId>
      <artifactId>oro</artifactId>
      <version>2.0.8</version>
      <url>http://jakarta.apache.org/oro/</url>
      <type>jar</type>
      <properties>
        <dist.bundle>true</dist.bundle>
      </properties>
    </dependency>
    <dependency>
      <groupId>jython</groupId>
      <artifactId>jython</artifactId>
      <version>2.1</version>
      <url>http://www.jython.org/</url>
      <type>jar</type>
      <properties>
        <dist.bundle>true</dist.bundle>
      </properties>
    </dependency>
    <dependency>
      <groupId>com.metaparadigm</groupId>
      <artifactId>json-rpc</artifactId>
      <version>1.0</version>
      <url>http://oss.metaparadigm.com/jsonrpc/</url>
      <type>jar</type>
      <properties>
      <war.bundle>true</war.bundle>
      </properties>
    </dependency>
    <dependency>
      <groupId>log4j</groupId>
      <artifactId>log4j</artifactId>
      <version>1.2.15</version>
      <url>http://logging.apache.org/log4j/</url>
      <type>jar</type>
      <properties>
        <dist.bundle>true</dist.bundle>
      </properties>
    </dependency>
    <dependency>
      <groupId>servletapi</groupId>
      <artifactId>servletapi</artifactId>
      <version>2.4</version>
      <url>http://java.sun.com/products/servlet/</url>
      <type>jar</type>
      <properties>
        <dist.bundle>true</dist.bundle>
      </properties>
    </dependency>
    <dependency>
      <groupId>torque</groupId>
      <artifactId>torque</artifactId>
      <version>3.3</version>
      <url>http://db.apache.org/torque/</url>
      <type>jar</type>
      <properties>
        <dist.bundle>true</dist.bundle>
      </properties>
    </dependency>
    <dependency>
      <groupId>velocity</groupId>
      <artifactId>velocity</artifactId>
      <version>1.5</version>
      <url>http://velocity.apache.org/engine/</url>
      <type>jar</type>
      <properties>
        <dist.bundle>true</dist.bundle>
      </properties>
    </dependency>
    <dependency>
      <groupId>velocity</groupId>
      <artifactId>texen</artifactId>
      <version>1.0</version>
      <url>http://velocity.apache.org/texen/</url>
      <type>jar</type>
      <properties>
        <dist.bundle>true</dist.bundle>
      </properties>
    </dependency>
    <dependency>
      <groupId>torque</groupId>
      <artifactId>village</artifactId>
      <version>3.3</version>
      <url>http://db.apache.org/torque/</url>
      <type>jar</type>
      <properties>
        <dist.bundle>true</dist.bundle>
      </properties>
    </dependency>
    <dependency>
      <groupId>xmlrpc</groupId>
      <artifactId>xmlrpc</artifactId>
      <version>2.0</version>
      <url>http://ws.apache.org/xmlrpc/</url>
      <type>jar</type>
      <properties>
        <dist.bundle>true</dist.bundle>
      </properties>
    </dependency>

<!--
========================================================================
==                                                                    ==
== uncomment these dependencies if you are using a 1.3 JDK            ==
==                                                                    ==
========================================================================
-->

<!--  REMOVE THIS LINE
    <dependency>
      <groupId>javax.sql</groupId>
      <artifactId>jdbc-stdext</artifactId>
      <version>2.0</version>
      <url>http://java.sun.com/products/jdbc/</url>
      <type>jar</type>
    </dependency>
    <dependency>
      <groupId>javax.naming</groupId>
      <artifactId>jndi</artifactId>
      <version>1.2.1</version>
      <url>http://java.sun.com/products/jndi/</url>
      <type>jar</type>
    </dependency>
    <dependency>
      <groupId>xalan</groupId>
      <artifactId>xalan</artifactId>
      <version>2.7.0</version>
      <url>http://xml.apache.org/xalan-j/</url>
      <type>jar</type>
      <properties>
        <dist.bundle>true</dist.bundle>
      </properties>
    </dependency>
    <dependency>
      <groupId>xerces</groupId>
      <artifactId>xercesImpl</artifactId>
      <version>2.4.0</version>
      <url>http://xml.apache.org/xerces2-j/</url>
      <type>jar</type>
      <properties>
        <dist.bundle>true</dist.bundle>
      </properties>
    </dependency>
    <dependency>
      <groupId>xml-apis</groupId>
      <artifactId>xml-apis</artifactId>
      <version>1.0.b2</version>
      <url>http://xml.apache.org/commons/</url>
      <properties>
        <dist.bundle>true</dist.bundle>
      </properties>
      <type>jar</type>
    </dependency>
REMOVE THIS LINE -->

<!--
========================================================================
==                                                                    ==
== uncomment these dependencies if you are using a 1.3 JDK            ==
==                                                                    ==
========================================================================
-->


<!--
========================================================================
==                                                                    ==
== needed only for testing                                            ==
==                                                                    ==
========================================================================
-->
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <url>http://www.junit.org/</url>
      <type>jar</type>
    </dependency>
    <dependency>
      <groupId>commons-dbcp</groupId>
      <artifactId>commons-dbcp</artifactId>
      <version>1.2.2</version>
      <url>http://commons.apache.org/dbcp/</url>
      <type>jar</type>
    </dependency>
    <!-- Don't move to newer versions!
         Versions beyond 1.7.1 from ibiblio no longer support JDK 1.3.1 -->
    <dependency>
      <groupId>hsqldb</groupId>
      <artifactId>hsqldb</artifactId>
      <version>1.7.1</version>
      <url>http://hsqldb.sourceforge.net/</url>
      <type>jar</type>
    </dependency>

<!--
========================================================================
==                                                                    ==
== needed only for testing                                            ==
==                                                                    ==
========================================================================
-->


<!--
========================================================================
==                                                                    ==
== maven related plugins                                              ==
==                                                                    ==
========================================================================
-->
    <dependency>
      <groupId>torque</groupId>
      <artifactId>maven-torque-plugin</artifactId>
      <version>3.3</version>
      <type>plugin</type>
    </dependency>

    <dependency>
      <groupId>maven</groupId>
      <artifactId>maven-ant-plugin</artifactId>
      <version>1.9</version>
      <type>plugin</type>
    </dependency>

    <dependency>
      <groupId>maven</groupId>
      <artifactId>maven-artifact-plugin</artifactId>
      <version>1.5.2</version>
      <type>plugin</type>
    </dependency>

    <dependency>
      <groupId>maven</groupId>
      <artifactId>maven-changelog-plugin</artifactId>
      <version>1.8.2</version>
      <type>plugin</type>
    </dependency>

    <dependency>
      <groupId>maven</groupId>
      <artifactId>maven-developer-activity-plugin</artifactId>
      <version>1.5.2</version>
      <type>plugin</type>
    </dependency>

    <dependency>
      <groupId>maven</groupId>
      <artifactId>maven-file-activity-plugin</artifactId>
      <version>1.5.2</version>
      <type>plugin</type>
    </dependency>

    <dependency>
      <groupId>maven-plugins</groupId>
      <artifactId>maven-findbugs-plugin</artifactId>
      <version>0.9.2</version>
      <url>http://maven-plugins.sourceforge.net/maven-findbugs-plugin/</url>
      <type>plugin</type>
    </dependency>

    <dependency>
      <groupId>maven</groupId>
      <artifactId>maven-jar-plugin</artifactId>
      <version>1.7</version>
      <type>plugin</type>
    </dependency>

    <dependency>
      <groupId>maven</groupId>
      <artifactId>maven-plugin-plugin</artifactId>
      <version>1.6</version>
      <type>plugin</type>
    </dependency>

    <dependency>
      <groupId>maven</groupId>
      <artifactId>maven-scm-plugin</artifactId>
      <version>1.5</version>
      <type>plugin</type>
    </dependency>

    <dependency>
      <groupId>maven</groupId>
      <artifactId>maven-site-plugin</artifactId>
      <version>1.6.1</version>
      <type>plugin</type>
    </dependency>

    <dependency>
      <groupId>maven</groupId>
      <artifactId>maven-tasklist-plugin</artifactId>
      <version>2.4</version>
      <type>plugin</type>
    </dependency>

    <dependency>
      <groupId>maven</groupId>
      <artifactId>maven-xdoc-plugin</artifactId>
      <version>1.10.1</version>
      <type>plugin</type>
    </dependency>
  </dependencies>

<!--
========================================================================
==                                                                    ==
== maven related plugins                                              ==
==                                                                    ==
========================================================================
-->

  <build>
    <defaultGoal>jar:jar</defaultGoal>
    <sourceDirectory>target/src</sourceDirectory>
    <unitTestSourceDirectory>src/test</unitTestSourceDirectory>
    <unitTest>
      <includes>
        <include>**/*Test.java</include>
        <include>**/Test*.java</include>
      </includes>
      <excludes>
        <exclude>**/test/*.java</exclude>
      </excludes>
      <resources>
        <resource>
          <directory>conf/test</directory>
          <includes>
            <include>commons-logging.properties</include>
          </includes>
        </resource>
      </resources>
    </unitTest>
    <resources>
      <resource>
        <directory>${basedir}</directory>
        <targetPath>META-INF</targetPath>
        <includes>
          <include>NOTICE</include>
        </includes>
      </resource>
    </resources>
    <!-- integrationUnitTestSourceDirectory/ -->
    <!-- aspectSourceDirectory/ -->
  </build>

  <reports>
    <report>maven-jdepend-plugin</report>
    <report>maven-checkstyle-plugin</report>
    <report>maven-changes-plugin</report>
    <report>maven-changelog-plugin</report>
    <report>maven-developer-activity-plugin</report>
    <report>maven-file-activity-plugin</report>
    <report>maven-javadoc-plugin</report>
    <report>maven-jxr-plugin</report>
    <report>maven-junit-report-plugin</report>
    <report>maven-license-plugin</report>
    <report>maven-tasklist-plugin</report>
    <report>maven-pmd-plugin</report>
    <report>maven-simian-plugin</report>
    <!-- report>maven-jcoverage-plugin</report -->
    <report>maven-findbugs-plugin</report>
  </reports>
</project>
