<?xml version="1.0" encoding="UTF-8"?>

<!-- Copyright (c) 2010 SAP AG. All rights reserved. This program and the 
	accompanying materials are made available under the terms of the Eclipse 
	Public License v1.0 which accompanies this distribution, and is available 
	at http://www.eclipse.org/legal/epl-v10.html Contributors: ktsvetkov - initial 
	implementation -->

<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">
	<modelVersion>4.0.0</modelVersion>

	<parent>
		<groupId>org.eclipse</groupId>
		<artifactId>gemini.dbaccess.parent</artifactId>
		<version>1.0.0.RELEASE</version>
		<relativePath>../../mvn_parent</relativePath>
	</parent>

	<packaging>eclipse-test-plugin</packaging>

	<artifactId>org.eclipse.gemini.dbaccess.test</artifactId>
	<version>1.0.0.RELEASE</version>
	<!-- <packaging>eclipse-plugin</packaging> -->
	<build>
		<plugins>
			<plugin>
				<groupId>org.sonatype.tycho</groupId>
				<artifactId>maven-osgi-test-plugin</artifactId>
				<configuration>
					<dependencies>
						<dependency>
							<type>eclipse-plugin</type>
							<groupId>org.eclipse</groupId>
							<artifactId>org.eclipse.gemini.dbaccess.derby</artifactId>
							<version>0.0.0</version>
						</dependency>
					</dependencies>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-javadoc-plugin</artifactId>
				<configuration>
					<skip>true</skip>
				</configuration>
			</plugin>
			
		</plugins>
	</build>
</project>
