<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">
	<modelVersion>4.0.0</modelVersion>
	<parent>
		<groupId>org.apache.uima</groupId>
		<artifactId>parent-pom</artifactId>
		<relativePath />
		<version>10</version>
	</parent>
	<artifactId>uimafit-parent</artifactId>
	<version>2.2.0</version>
	<packaging>pom</packaging>
	<name>Apache UIMA uimaFIT - Parent</name>
	<url>${uimaWebsiteUrl}</url>
	<inceptionYear>2012</inceptionYear>
	<properties>
		<spring.version>3.2.16.RELEASE</spring.version>
		<uima.version>2.8.1</uima.version>
        <maven.compiler.source>1.7</maven.compiler.source>
        <maven.compiler.target>1.7</maven.compiler.target>
        <!-- 
         BACKWARD_COMPATIBLE_IMPLEMENTER - patch version (=.=.+)
         BACKWARD_COMPATIBLE_USER        - minor version (=.+.0)
         NON_BACKWARD_COMPATIBLE         - major version (+.0.0)
         -->
        <compat.level>BACKWARD_COMPATIBLE_USER</compat.level>
        <compat.previous.version>2.1.0</compat.previous.version>
	</properties>
    <!--
      - Only required while uimaFIT depends on unreleased versions of UIMA.
	<repositories>
		<repository>
			<id>apache.snapshots</id>
			<name>Apache Snapshot Repository</name>
			<url>http://repository.apache.org/snapshots</url>
			<releases>
				<enabled>false</enabled>
			</releases>
		</repository>
	</repositories>
	<pluginRepositories>
		<pluginRepository>
			<id>apache.snapshots.plugins</id>
			<name>Apache Snapshot Repository - Maven plugins</name>
			<url>http://repository.apache.org/snapshots</url>
			<layout>default</layout>
			<releases>
				<enabled>false</enabled>
			</releases>
			<snapshots>
				<enabled>true</enabled>
				<checksumPolicy>fail</checksumPolicy>
				<updatePolicy>never</updatePolicy>
			</snapshots>
		</pluginRepository>
	</pluginRepositories>
    -->
    
	<dependencies>
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<scope>test</scope>
		</dependency>
	</dependencies>
	<dependencyManagement>
		<dependencies>
			<dependency>
				<groupId>junit</groupId>
				<artifactId>junit</artifactId>
				<version>4.12</version>
			</dependency>
			<dependency>
				<groupId>commons-lang</groupId>
				<artifactId>commons-lang</artifactId>
				<version>2.6</version>
			</dependency>
			<dependency>
				<groupId>commons-io</groupId>
				<artifactId>commons-io</artifactId>
				<version>2.2</version>
				<!-- 2.2 is the last Java 5 compatible version -->
			</dependency>
			<dependency>
				<groupId>commons-logging</groupId>
				<artifactId>commons-logging-api</artifactId>
				<version>1.1</version>
			</dependency>
			<dependency>
				<groupId>org.apache.uima</groupId>
				<artifactId>uimaj-core</artifactId>
				<version>${uima.version}</version>
			</dependency>
			<dependency>
				<groupId>org.apache.uima</groupId>
				<artifactId>uimaj-cpe</artifactId>
				<version>${uima.version}</version>
			</dependency>
			<dependency>
				<groupId>org.apache.uima</groupId>
				<artifactId>uimaj-tools</artifactId>
				<version>${uima.version}</version>
			</dependency>
			<dependency>
				<groupId>org.jdom</groupId>
				<artifactId>jdom</artifactId>
				<version>1.1.3</version>
			</dependency>
			<dependency>
				<groupId>org.springframework</groupId>
				<artifactId>spring-core</artifactId>
				<version>${spring.version}</version>
			</dependency>
			<dependency>
				<groupId>org.springframework</groupId>
				<artifactId>spring-beans</artifactId>
				<version>${spring.version}</version>
			</dependency>
			<dependency>
				<groupId>org.springframework</groupId>
				<artifactId>spring-context</artifactId>
				<version>${spring.version}</version>
				<!--  
				 - This is excluded in the assembly and not here to avoid unwanted side-effects
				 - on users' projects.
				<exclusions>
					<exclusion>
						<groupId>org.springframework</groupId>
						<artifactId>spring-aop</artifactId>
					</exclusion>
				</exclusions>
				-->
			</dependency>
			<dependency>
				<groupId>org.springframework</groupId>
				<artifactId>spring-test</artifactId>
				<version>${spring.version}</version>
			</dependency>
		</dependencies>
	</dependencyManagement>
	<licenses>
		<license>
			<name>Apache License, Version 2.0</name>
			<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
			<distribution>repo</distribution>
		</license>
	</licenses>

	<build>
		<plugins>
      <!-- This should no longer be required with current versions of the maven-resources-plugin
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-resources-plugin</artifactId>
				<configuration>
					<encoding>${project.build.sourceEncoding}</encoding>
				</configuration>
			</plugin>
      -->
			<plugin>
				<groupId>org.codehaus.gmaven</groupId>
				<artifactId>gmaven-plugin</artifactId>
				<version>1.5</version>
				<executions>
					<execution>
						<!-- Load postNoticeText from NOTICE file -->
						<id>read-notice</id>
						<phase>generate-sources</phase>
						<goals>
							<goal>execute</goal>
						</goals>
						<configuration>
							<source>
								def noticeFile = new File(project.basedir.path +
								"/NOTICE");
								if (noticeFile.exists()) {
								project.properties.postNoticeText = noticeFile.text;
								}
							</source>
						</configuration>
					</execution>
				</executions>
			</plugin>
		</plugins>
		<pluginManagement>
			<plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-gpg-plugin</artifactId>
                    <version>1.6</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.rat</groupId>
                    <artifactId>apache-rat-plugin</artifactId>
                    <version>0.11</version>
                    <executions>
                        <execution>
                            <id>default-cli</id>
                            <configuration>
                                <excludes>
                                    <!-- Plain documentation -->
                                    <exclude>README*</exclude>
                                    <!-- Release files -->
                                    <exclude>RELEASE_NOTES*</exclude>
                                    <exclude>issuesFixed/**</exclude>
                                    <exclude>release.properties</exclude>
                                    <!-- Build controls -->
                                    <exclude>.activate-enforce-compatibility</exclude>
                                </excludes>
                            </configuration>
                        </execution>
                    </executions>
                    <dependencies>
                        <!-- https://issues.apache.org/jira/browse/RAT-158 -->
                        <dependency>
                            <groupId>org.apache.maven.doxia</groupId>
                            <artifactId>doxia-core</artifactId>
                            <version>1.7</version>
                        </dependency>
                    </dependencies>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>3.5.1</version>
                    <configuration>
                        <source>${maven.compiler.source}</source>
                        <target>${maven.compiler.target}</target>
                        <!--encoding>UTF-8</encoding this inherited from apache pom 7 -->
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-javadoc-plugin</artifactId>
                    <version>2.10.3</version> 
                    <executions>
                        <execution>
                            <id>attach-javadocs</id>
                            <configuration>
                                <source>${maven.compiler.source}</source>
                            </configuration> 
                        </execution>
                        <execution>
                            <id>default-cli</id>  <!-- Jenkins runs this apparently 3/2015 -->
                            <configuration>
                                <source>${maven.compiler.source}</source>
                            </configuration> 
                        </execution>
                    </executions>
                </plugin>
				<plugin>
					<groupId>org.apache.uima</groupId>
					<artifactId>jcasgen-maven-plugin</artifactId>
					<version>${uima.version}</version>
				</plugin>
				<!--This plugin's configuration is used to store Eclipse m2e settings
					only. It has no influence on the Maven build itself. -->
				<plugin>
					<groupId>org.eclipse.m2e</groupId>
					<artifactId>lifecycle-mapping</artifactId>
					<version>1.0.0</version>
					<configuration>
						<lifecycleMappingMetadata>
							<pluginExecutions>
								<pluginExecution>
									<pluginExecutionFilter>
										<groupId>org.codehaus.gmaven</groupId>
										<artifactId>gmaven-plugin</artifactId>
										<versionRange>[1.4,)</versionRange>
										<goals>
											<goal>execute</goal>
										</goals>
									</pluginExecutionFilter>
									<action>
										<ignore />
									</action>
								</pluginExecution>
							</pluginExecutions>
						</lifecycleMappingMetadata>
					</configuration>
				</plugin>
			</plugins>
		</pluginManagement>
	</build>
    <profiles>
        <profile>
            <id>enforce-compatibility</id>
            <activation>
                <file><exists>.activate-enforce-compatibility</exists></file>
            </activation>
            <build>
                <pluginManagement>
                    <plugins>
                        <plugin>
                            <artifactId>maven-enforcer-plugin</artifactId>
                            <version>1.4.1</version>
                            <dependencies>
                                <dependency>
                                    <groupId>org.semver</groupId>
                                    <artifactId>enforcer-rule</artifactId>
                                    <version>0.9.33</version>
                                </dependency>
                            </dependencies>
                            <executions>
                                <execution>
                                    <id>enforce-compatibility</id>
                                    <phase>verify</phase>
                                    <goals>
                                        <goal>enforce</goal>
                                    </goals>
                                    <configuration>
                                        <rules>
                                            <requireBackwardCompatibility implementation="org.semver.enforcer.RequireBackwardCompatibility">
                                                <previousVersion>${compat.previous.version}</previousVersion>
                                                <dumpDetails>true</dumpDetails>
                                                <compatibilityType>${compat.level}</compatibilityType>
                                            </requireBackwardCompatibility>
                                        </rules>
                                    </configuration>
                                </execution>
                            </executions>
                        </plugin>
                    </plugins>
                </pluginManagement>
            </build>
        </profile>
    </profiles>

  <scm>
    <connection>scm:svn:http://svn.apache.org/repos/asf/uima/build/tags/uimafit-2.2.0/uimafit-parent</connection>
    <developerConnection>scm:svn:https://svn.apache.org/repos/asf/uima/build/tags/uimafit-2.2.0/uimafit-parent</developerConnection>
    <url>http://svn.apache.org/viewvc/uima/build/tags/uimafit-2.2.0/uimafit-parent</url>
  </scm>
</project>