<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

  <parent>
    <groupId>org.apache</groupId>
    <artifactId>apache</artifactId>
    <version>11</version>
    <relativePath />
  </parent>

  <modelVersion>4.0.0</modelVersion>
  <groupId>org.apache.jdo</groupId>
  <artifactId>parent-pom</artifactId>
  <version>3.1.1-SNAPSHOT</version>
  <packaging>pom</packaging>
  <name>JDO PARENT</name>
  <description>The Java Data Objects (JDO) API is a standard interface-based 
Java model abstraction of persistence, developed as Java Specification 
Requests (JSR 12 and 243) under the auspices of the Java Community Process.</description>
  <url>http://db.apache.org/jdo</url>
  <inceptionYear>2005</inceptionYear>

  <scm>
    <connection>scm:svn:http://svn.apache.org/repos/asf/db/jdo/branches/3.1-rc1</connection>
    <developerConnection>scm:svn:https://svn.apache.org/repos/asf/db/jdo/branches/3.1-rc1</developerConnection> <url>http://svn.apache.org/viewvc/db/jdo</url> </scm> <organization> <name>Apache Software Foundation</name> <url>http://www.apache.org</url> </organization> <dependencyManagement> <dependencies> <dependency>
        <groupId>javax.jdo</groupId>
        <artifactId>jdo-api</artifactId>
        <version>3.1.1-SNAPSHOT</version>
      </dependency>
      <dependency>
        <groupId>org.apache.jdo</groupId>
        <artifactId>jdo-exectck</artifactId>
        <version>3.1.1-SNAPSHOT</version>
      </dependency>
      <dependency>
        <groupId>org.apache.jdo</groupId>
        <artifactId>jdo-tck</artifactId>
        <version>3.1.1-SNAPSHOT</version>
      </dependency>
     <dependency>
        <groupId>org.apache.maven</groupId>
        <artifactId>maven-plugin-api</artifactId>
        <version>2.0</version>
      </dependency>
      <dependency>
        <groupId>javax.transaction</groupId>
        <artifactId>transaction-api</artifactId>
        <version>1.1</version>
      </dependency>
      <dependency>
        <groupId>org.apache.ant</groupId>
        <artifactId>ant</artifactId>
        <version>1.7.0</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>3.8.1</version>
      </dependency>
      <dependency>
        <groupId>org.apache.geronimo.specs</groupId>
        <artifactId>geronimo-jpa_2.0_spec</artifactId>
        <version>1.0</version>
      </dependency>
      <dependency>
        <groupId>org.apache.derby</groupId>
        <artifactId>derby</artifactId>
        <version>10.6.1.0</version>
      </dependency>
      <dependency>
        <groupId>org.apache.derby</groupId>
        <artifactId>derbytools</artifactId>
        <version>10.6.1.0</version>
      </dependency>
      <dependency>
        <groupId>commons-io</groupId>
        <artifactId>commons-io</artifactId>
        <version>1.4</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-core</artifactId>
        <version>2.0</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-beans</artifactId>
        <version>2.0</version>
      </dependency>
      <dependency>
        <groupId>commons-collections</groupId>
        <artifactId>commons-collections</artifactId>
        <version>3.2</version>
      </dependency>
     <dependency>
        <groupId>commons-logging</groupId>
        <artifactId>commons-logging</artifactId>
        <version>1.1</version>
      </dependency>
    </dependencies>
  </dependencyManagement>

  <mailingLists>
    <mailingList>
      <name>JDO User List</name>
      <subscribe>jdo-user-subscribe@db.apache.org</subscribe>
      <unsubscribe>jdo-user-unsubscribe@db.apache.org</unsubscribe>
      <archive>http://mail-archives.apache.org/mod_mbox/db-jdo-user/</archive>
    </mailingList>
    <mailingList>
      <name>JDO Developer List</name>
      <subscribe>jdo-dev-subscribe@db.apache.org</subscribe>
      <unsubscribe>jdo-dev-unsubscribe@db.apache.org</unsubscribe>
      <archive>http://mail-archives.apache.org/mod_mbox/db-jdo-dev/</archive>
    </mailingList>
    <mailingList>
      <name>JDO Commits List</name>
      <subscribe>jdo-commits-subscribe@db.apache.org</subscribe>
      <unsubscribe>jdo-commits-unsubscribe@db.apache.org</unsubscribe>
      <archive>http://mail-archives.apache.org/mod_mbox/db-jdo-commits/</archive>
    </mailingList>
  </mailingLists>

  <developers>
    <developer>
      <id>clr</id>
      <name>Craig Russell</name>
      <email>Craig.Russell@Sun.COM</email>
      <organization>Sun Microsystems, Inc.</organization>
      <timezone>-8</timezone>
    </developer>
    <developer>
      <id>mbo</id>
      <name>Michael Bouschen</name>
      <email>mbo.tech@spree.de</email>
      <organization>Tech@Spree Engineering GmbH</organization>
      <timezone>1</timezone>
    </developer>
    <developer>
      <id>brazil</id>
      <name>Michael Watzek</name>
      <email>mwa.tech@spree.de</email>
      <organization>Tech@Spree Engineering GmbH</organization>
      <timezone>1</timezone>
    </developer>
    <developer>
      <id>mcaisse</id>
      <name>Michelle Caisse</name>
      <email>Michelle.Caisse@Sun.COM</email>
      <organization>Apache.org</organization>
      <timezone>-8</timezone>
    </developer>
    <developer>
      <id>madams</id>
      <name>Matthew Adams</name>
      <email>matthew@matthewadams.me</email>
      <organization>Apache.org</organization>
      <timezone>-8</timezone>
    </developer>
    <developer>
      <id>mzaun</id>
      <name>Martin Zaun</name>
      <email>martin.zaun@Sun.COM</email>
      <organization>Sun Microsystems, Inc.</organization>
      <timezone>-8</timezone>
    </developer>
    <developer>
      <id>ebengtson</id>
      <name>Erik Bengtson</name>
      <email>erik@jpox.org</email>
      <organization>JPOX</organization>
      <timezone>1</timezone>
    </developer>
    <developer>
      <id>geirm</id>
      <name>Geir Magnusson, Jr.</name>
      <email>geirm@apache.org</email>
      <organization>Apache.org</organization>
      <timezone>-8</timezone>
    </developer>
    <developer>
      <id>brianm</id>
      <name>Brian McCallister</name>
      <email>brianm@apache.org</email>
      <organization>Apache.org</organization>
      <timezone>-8</timezone>
    </developer>
  </developers>

  <!--
  <scm>
    <connection>scm:svn:http://svn.apache.org/repos/asf/db/jdo/trunk</connection>
    <developerConnection>scm:svn:https://svn.apache.org/repos/asf/db/jdo/trunk</developerConnection>
    <url>http://svn.apache.org/viewcvs.cgi/</url>
  </scm>
  -->

  <build>
    <plugins>
      <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>2.3.2</version>
        <configuration>
          <source>1.5</source>
          <target>1.5</target>
        </configuration>
      </plugin>
      <plugin>
        <artifactId>maven-javadoc-plugin</artifactId>
        <configuration>
          <doctitle>${project.name} ${pom.currentVersion}</doctitle>
          <windowtitle>${project.name} ${pom.currentVersion}</windowtitle>
        </configuration>
      </plugin>
    </plugins>
  </build>
  <reporting>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-changes-plugin</artifactId>
        <version>2.6</version>
        <configuration>
          <xmlPath>${basedir}/xdocs/changes.xml</xmlPath>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-checkstyle-plugin</artifactId>
        <version>2.6</version>
        <configuration>
          <configLocation>${basedir}/../jdo_checks.xml</configLocation>
          <headerLocation>${basedir}/../LICENSE.txt</headerLocation>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-deploy-plugin</artifactId>
        <version>2.6</version>
        <configuration>
          <skip>false</skip>
        </configuration>
       </plugin>
    </plugins>
  </reporting>
</project>
