<?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/maven-v4_0_0.xsd">

	<parent>
		<groupId>org.eclipse.virgo</groupId>
		<artifactId>greenpages.parent</artifactId>
		<version>2.5.0.RELEASE</version>
		<relativePath>../parent</relativePath>
	</parent>

	<modelVersion>4.0.0</modelVersion>
	<groupId>org.eclipse.virgo</groupId>
	<artifactId>greenpages.jpa</artifactId>
	<name>greenpages.jpa</name>
	<packaging>jar</packaging>

	<dependencies>
		<dependency>
			<groupId>org.eclipse.virgo</groupId>
			<artifactId>greenpages.app</artifactId>
			<version>${project.version}</version>
		</dependency>
		<dependency>
			<groupId>org.junit</groupId>
			<artifactId>com.springsource.org.junit</artifactId>
		</dependency>
		<dependency>
		    <groupId>org.springframework</groupId>
		    <artifactId>org.springframework.test</artifactId>
		</dependency>
		<dependency>
		    <groupId>org.springframework</groupId>
		    <artifactId>org.springframework.instrument</artifactId>
		</dependency>
		<dependency>
		    <groupId>org.springframework</groupId>
		    <artifactId>org.springframework.aspects</artifactId>
		</dependency>
		<dependency>
			<groupId>org.apache.commons</groupId>
			<artifactId>com.springsource.org.apache.commons.dbcp</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>com.h2database</groupId>
			<artifactId>com.springsource.org.h2</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
		    <groupId>org.aspectj</groupId>
		    <artifactId>org.aspectj-library</artifactId>
			<type>libd</type>
		</dependency>
	</dependencies>

</project>
