<?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">
	<modelVersion>4.0.0</modelVersion>

	<parent>
		<groupId>org.eclipse.objectteams</groupId>
		<artifactId>objectteams-otdre-parent-pom</artifactId>
		<version>2.7.6</version>
		<relativePath>../infrastructure/parent-pom-otdre/pom.xml</relativePath>
	</parent>

	<packaging>jar</packaging>
        
	<artifactId>objectteams-compile-test</artifactId>
	<version>1.1.6</version>
	<name>Object Teams test project</name>

	<!-- simply repeat this declaration from the parent pom, otherwise Maven duplicates the artifactId in the path -->
	<url>http://download.eclipse.org/objectteams/maven/3/sites/${project.artifactId}</url>

	<description>
		This module demonstrates how to use Maven3 for compiling and running OT/J programs.
	</description>
    
	<licenses>
		<license>
			<name>Eclipse Public License Version 1.0</name>
			<comments>
				This file is part of "Object Teams Development Tooling"-Software

				Copyright 2010, 2019 GK Software SE and others.
				This program and the accompanying materials
				are made available under the terms of the Eclipse Public License 2.0
				which accompanies this distribution, and is available at
				https://www.eclipse.org/legal/epl-2.0/
				
				SPDX-License-Identifier: EPL-2.0
				Please visit http://www.eclipse.org/objectteams for updates and contact.

				Contributors:
					Olaf Otto - Initial concept
					Stephan Herrmann - Initial API and implementation
			</comments>
		</license>
	</licenses>

	<repositories>
		<!-- needed for finding the parent-pom: -->
		<repository>
			<id>ObjectTeamsRepository</id>
			<name>Object Teams Repository</name>
			<url>http://download.eclipse.org/objectteams/maven/3/repository</url>
		</repository>
    </repositories>

    <properties>
    	<!-- Relative path of this module: -->
    	<project-repository-path>maven/testproject</project-repository-path>
    	<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>
    
    <!-- Override inherited declaration, otherwise Maven appends the artifactId to the path -->
	<scm>
	    <connection>scm:git:git://git.eclipse.org/gitroot/objectteams/org.eclipse.objectteams.git/${project-repository-path}</connection>
	    <developerConnection>scm:git:ssh://${username}@git.eclipse.org/gitroot/objectteams/org.eclipse.objectteams.git/${project-repository-path}</developerConnection>
	    <url>http://git.eclipse.org/c/objectteams/org.eclipse.objectteams.git/${project-repository-path}</url>
	</scm>

	<!-- simply repeat this declaration from the parent pom, otherwise Maven duplicates the artifactId in the path -->
	<distributionManagement>
		<site>
			<id>otSiteRepo</id>
			<name>Object Teams sites repository for Maven 3</name>
			<url>${protocol}://${ot.host}:${ot.maven.repository.basepath}/sites/${project.artifactId}</url>
		</site>
	</distributionManagement>

	<dependencies>
		<!-- Testing: -->
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>4.6</version>
			<scope>test</scope>
		</dependency>
	</dependencies>

	<reporting>
		<plugins>
			<!-- See http://mojo.codehaus.org/jdepend-maven-plugin/ -->
			<plugin>
			        <groupId>org.codehaus.mojo</groupId>
			        <artifactId>jdepend-maven-plugin</artifactId>
			        <version>2.0</version>
			</plugin>
			<!-- See http://mojo.codehaus.org/taglist-maven-plugin/ -->
			<plugin>
			        <groupId>org.codehaus.mojo</groupId>
			        <artifactId>taglist-maven-plugin</artifactId>
			        <version>2.4</version>
			</plugin>
			<!-- See http://maven.apache.org/plugins/maven-javadoc-plugin/ -->
			<!-- Disabled as it cannot parse OT sources. -->
			<!--
			        >plugin> <groupId>org.apache.maven.plugins</groupId>
			        <artifactId>maven-javadoc-plugin</artifactId> </plugin -->
		</plugins>
	</reporting>
</project>
