<?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>
	<groupId>com.mpobjects</groupId>
	<artifactId>mpo-oss-parent</artifactId>
	<version>1.2.0</version>
	<packaging>pom</packaging>
	<name>MPO OSS Parent</name>
	<description>Parent Maven module for MP Objects OSS Projects</description>
	<inceptionYear>2019</inceptionYear>
	<url>https://github.com/mpobjects/mpo-oss-parent</url>

	<organization>
		<name>MP Objects</name>
		<url>http://www.mp-objects.com</url>
	</organization>

	<developers>
		<developer>
			<name>Michiel Hendriks</name>
			<email>michiel.hendriks@mp-objects.com</email>
			<organization>MP Objects</organization>
			<organizationUrl>http://www.mp-objects.com</organizationUrl>
		</developer>
	</developers>

	<licenses>
		<license>
			<name>Apache License, Version 2.0</name>
			<url>https://www.apache.org/licenses/LICENSE-2.0.txt</url>
			<distribution>repo</distribution>
		</license>
	</licenses>

	<scm>
		<connection>scm:git:https://github.com/mpobjects/mpo-oss-parent.git</connection>
		<developerConnection>scm:git:https://github.com/mpobjects/mpo-oss-parent.git</developerConnection>
		<url>https://github.com/mpobjects/mpo-oss-parent.git</url>
		<tag>mpo-oss-parent-1.2.0</tag>
	</scm>

	<ciManagement>
		<system>Travis</system>
		<url>https://travis-ci.org/mpobjects/mpo-oss-parent</url>
	</ciManagement>

	<distributionManagement>
		<snapshotRepository>
			<id>ossrh</id>
			<url>https://oss.sonatype.org/content/repositories/snapshots</url>
		</snapshotRepository>
		<repository>
			<id>ossrh</id>
			<url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
		</repository>
	</distributionManagement>

	<build>
		<pluginManagement>
			<plugins>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-compiler-plugin</artifactId>
					<version>${maven-compiler-plugin}</version>
					<inherited>true</inherited>
					<configuration>
						<debug>true</debug>
						<showWarnings>true</showWarnings>
						<showDeprecation>true</showDeprecation>
					</configuration>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-source-plugin</artifactId>
					<version>${maven-source-plugin}</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-javadoc-plugin</artifactId>
					<version>${maven-javadoc-plugin}</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-jar-plugin</artifactId>
					<version>${maven-jar-plugin}</version>
					<inherited>true</inherited>
					<configuration>
						<archive>
							<manifestEntries>
								<Build-Timestamp>${maven.build.timestamp}</Build-Timestamp>
								<Build-Revision>${build.scm.revision}</Build-Revision>
								<Build-Branch>${build.scm.branch}</Build-Branch>
							</manifestEntries>
						</archive>
					</configuration>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-release-plugin</artifactId>
					<version>${maven-release-plugin}</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-site-plugin</artifactId>
					<version>${maven-site-plugin}</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-clean-plugin</artifactId>
					<version>${maven-clean-plugin}</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-deploy-plugin</artifactId>
					<version>${maven-deploy-plugin}</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-install-plugin</artifactId>
					<version>${maven-install-plugin}</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-surefire-report-plugin</artifactId>
					<version>${maven-surefire-report-plugin}</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-project-info-reports-plugin</artifactId>
					<version>${maven-project-info-reports-plugin}</version>
				</plugin>
				<plugin>
					<groupId>org.jacoco</groupId>
					<artifactId>jacoco-maven-plugin</artifactId>
					<version>${jacoco-maven-plugin}</version>
				</plugin>
				<plugin>
					<groupId>org.sonatype.plugins</groupId>
					<artifactId>nexus-staging-maven-plugin</artifactId>
					<version>${nexus-staging-maven-plugin}</version>
				</plugin>
				<plugin>
					<groupId>org.eluder.coveralls</groupId>
					<artifactId>coveralls-maven-plugin</artifactId>
					<version>${coveralls-maven-plugin}</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-gpg-plugin</artifactId>
					<version>${maven-gpg-plugin}</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-checkstyle-plugin</artifactId>
					<version>${maven-checkstyle-plugin}</version>
					<configuration>
						<configLocation>checkstyle/strict.xml</configLocation>
						<encoding>UTF-8</encoding>
						<consoleOutput>true</consoleOutput>
						<sourceDirectories>
							<sourceDirectory>${project.build.sourceDirectory}</sourceDirectory>
						</sourceDirectories>
					</configuration>
					<dependencies>
						<dependency>
							<groupId>com.mpobjects</groupId>
							<artifactId>mpo-qa-profiles</artifactId>
							<version>${mpo-qa-profiles}</version>
						</dependency>
						<dependency>
							<groupId>com.puppycrawl.tools</groupId>
							<artifactId>checkstyle</artifactId>
							<version>${checkstyle-version}</version>
						</dependency>
					</dependencies>
				</plugin>
				<plugin>
					<groupId>org.codehaus.mojo</groupId>
					<artifactId>findbugs-maven-plugin</artifactId>
					<version>${findbugs-maven-plugin}</version>
					<inherited>true</inherited>
					<configuration>
						<effort>max</effort>
						<maxRank>9</maxRank>
					</configuration>
				</plugin>
				<plugin>
					<groupId>com.github.spotbugs</groupId>
					<artifactId>spotbugs-maven-plugin</artifactId>
					<version>${spotbugs-maven-plugin}</version>
					<inherited>true</inherited>
					<configuration>
						<effort>Max</effort>
						<maxRank>9</maxRank>
					</configuration>
					<dependencies>
						<dependency>
							<groupId>com.github.spotbugs</groupId>
							<artifactId>spotbugs</artifactId>
							<version>${spotbugs-version}</version>
						</dependency>
					</dependencies>
				</plugin>
				<plugin>
					<groupId>net.revelc.code.formatter</groupId>
					<artifactId>formatter-maven-plugin</artifactId>
					<version>${formatter-maven-plugin}</version>
					<configuration>
						<configFile>eclipse/java-format.xml</configFile>
						<lineEnding>CRLF</lineEnding>
					</configuration>
					<dependencies>
						<dependency>
							<groupId>com.mpobjects</groupId>
							<artifactId>mpo-qa-profiles</artifactId>
							<version>${mpo-qa-profiles}</version>
						</dependency>
					</dependencies>
				</plugin>
			</plugins>
		</pluginManagement>
		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-source-plugin</artifactId>
				<executions>
					<execution>
						<id>attach-source</id>
						<phase>verify</phase>
						<goals>
							<goal>jar</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-javadoc-plugin</artifactId>
				<executions>
					<execution>
						<id>attach-javadoc</id>
						<phase>verify</phase>
						<goals>
							<goal>jar</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.sonatype.plugins</groupId>
				<artifactId>nexus-staging-maven-plugin</artifactId>
				<extensions>true</extensions>
				<configuration>
					<serverId>ossrh</serverId>
					<nexusUrl>https://oss.sonatype.org/</nexusUrl>
					<autoReleaseAfterClose>true</autoReleaseAfterClose>
				</configuration>
			</plugin>
			<plugin>
				<groupId>net.revelc.code.formatter</groupId>
				<artifactId>formatter-maven-plugin</artifactId>
				<executions>
					<execution>
						<!-- set property formatter.skip to skip -->
						<id>validate-format</id>
						<goals>
							<goal>validate</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.jacoco</groupId>
				<artifactId>jacoco-maven-plugin</artifactId>
				<executions>
					<execution>
						<id>prepare-agent</id>
						<goals>
							<goal>prepare-agent</goal>
						</goals>
						<configuration>
							<skip>${m2e.enabled}</skip>
						</configuration>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-checkstyle-plugin</artifactId>
				<executions>
					<execution>
						<id>checkstyle</id>
						<phase>verify</phase>
						<goals>
							<goal>check</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<!-- executed for java 6+7 -->
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>findbugs-maven-plugin</artifactId>
				<executions>
					<execution>
						<id>findbugs</id>
						<phase>verify</phase>
						<goals>
							<goal>check</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<!-- executed for java 8+ -->
				<groupId>com.github.spotbugs</groupId>
				<artifactId>spotbugs-maven-plugin</artifactId>
				<executions>
					<execution>
						<id>spotbugs</id>
						<phase>verify</phase>
						<goals>
							<goal>check</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-gpg-plugin</artifactId>
				<executions>
					<execution>
						<id>sign-artifacts</id>
						<phase>verify</phase>
						<goals>
							<goal>sign</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
		</plugins>
	</build>

	<reporting>
		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-surefire-report-plugin</artifactId>
			</plugin>
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>findbugs-maven-plugin</artifactId>
			</plugin>
			<plugin>
				<groupId>com.github.spotbugs</groupId>
				<artifactId>spotbugs-maven-plugin</artifactId>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-checkstyle-plugin</artifactId>
			</plugin>
		</plugins>
	</reporting>

	<properties>
		<java-version>1.8</java-version>
		<maven.compiler.target>${java-version}</maven.compiler.target>
		<maven.compiler.source>${java-version}</maven.compiler.source>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>

		<maven-compiler-plugin>3.8.1</maven-compiler-plugin>
		<maven-source-plugin>3.1.0</maven-source-plugin>
		<maven-javadoc-plugin>3.1.1</maven-javadoc-plugin>
		<maven-jar-plugin>3.1.2</maven-jar-plugin>
		<maven-release-plugin>2.5.3</maven-release-plugin>
		<maven-gpg-plugin>1.6</maven-gpg-plugin>
		<maven-site-plugin>3.8.2</maven-site-plugin>
		<maven-clean-plugin>3.1.0</maven-clean-plugin>
		<maven-deploy-plugin>2.8.2</maven-deploy-plugin>
		<maven-install-plugin>2.5.2</maven-install-plugin>
		<maven-surefire-report-plugin>2.22.2</maven-surefire-report-plugin>
		<maven-project-info-reports-plugin>3.0.0</maven-project-info-reports-plugin>

		<mpo-qa-profiles>1.0.3</mpo-qa-profiles>

		<jacoco-maven-plugin>0.8.2</jacoco-maven-plugin>
		<nexus-staging-maven-plugin>1.6.8</nexus-staging-maven-plugin>
		<coveralls-maven-plugin>4.3.0</coveralls-maven-plugin>
		<findbugs-maven-plugin>3.0.5</findbugs-maven-plugin>
		<spotbugs-maven-plugin>3.1.12.2</spotbugs-maven-plugin>
		<spotbugs-version>3.1.12</spotbugs-version>
		<maven-checkstyle-plugin>3.1.0</maven-checkstyle-plugin>
		<checkstyle-version>8.25</checkstyle-version>
		<jacoco-maven-plugin>0.8.5</jacoco-maven-plugin>
		<formatter-maven-plugin>2.10.0</formatter-maven-plugin>
	</properties>

	<profiles>
		<profile>
			<id>jdk1.6</id>
			<activation>
				<jdk>1.6</jdk>
			</activation>
			<properties>
				<findbugs-maven-plugin>2.5.5</findbugs-maven-plugin>
				<checkstyle-maven-plugin>3.0.0</checkstyle-maven-plugin>
				<checkstyle-version>6.18</checkstyle-version>
				<spotbugs.skip>true</spotbugs.skip>
			</properties>
		</profile>
		<profile>
			<id>jdk1.7</id>
			<activation>
				<jdk>1.7</jdk>
			</activation>
			<properties>
				<checkstyle-maven-plugin>3.0.0</checkstyle-maven-plugin>
				<checkstyle-version>6.18</checkstyle-version>
				<spotbugs.skip>true</spotbugs.skip>
				<formatter-maven-plugin>2.0.1</formatter-maven-plugin>
			</properties>
		</profile>
		<profile>
			<id>jdk1.8+</id>
			<activation>
				<jdk>1.8</jdk>
			</activation>
			<properties>
				<findbugs.skip>true</findbugs.skip>
			</properties>
		</profile>
		<profile>
			<id>non-java-project</id>
			<activation>
				<file>
					<missing>src/main/java</missing>
				</file>
			</activation>
			<properties>
				<formatter.skip>true</formatter.skip>
				<checkstyle.skip>true</checkstyle.skip>
				<findbugs.skip>true</findbugs.skip>
				<spotbugs.skip>true</spotbugs.skip>
			</properties>
		</profile>
		<profile>
			<id>default-build-properties</id>
			<activation>
				<activeByDefault>true</activeByDefault>
			</activation>
			<properties>
				<build.number>0</build.number>
				<build.id>undefined</build.id>
				<build.url>undefined</build.url>
				<build.scm.revision>undefined</build.scm.revision>
				<build.scm.branch>undefined</build.scm.branch>
			</properties>
		</profile>
		<profile>
			<id>travis-ci</id>
			<activation>
				<property>
					<name>env.TRAVIS</name>
				</property>
			</activation>
			<properties>
				<build.number>${env.TRAVIS_BUILD_NUMBER}</build.number>
				<build.id>${env.TRAVIS_BUILD_ID}</build.id>
				<build.url>${env.TRAVIS_BUILD_WEB_URL}</build.url>
				<build.scm.revision>${env.TRAVIS_COMMIT}</build.scm.revision>
				<build.scm.branch>${env.TRAVIS_BRANCH}</build.scm.branch>
			</properties>
		</profile>
		<profile>
			<id>eclipse</id>
			<activation>
				<property>
					<name>m2e.version</name>
				</property>
			</activation>
			<build>
				<pluginManagement>
					<plugins>
						<plugin>
							<groupId>org.eclipse.m2e</groupId>
							<artifactId>lifecycle-mapping</artifactId>
							<version>1.0.0</version>
							<configuration>
								<lifecycleMappingMetadata>
									<pluginExecutions>
										<pluginExecution>
											<pluginExecutionFilter>
												<groupId>org.apache.maven.plugins</groupId>
												<artifactId>maven-checkstyle-plugin</artifactId>
												<versionRange>[3,)</versionRange>
												<goals>
													<goal>check</goal>
												</goals>
											</pluginExecutionFilter>
											<action>
												<ignore />
											</action>
										</pluginExecution>
										<pluginExecution>
											<pluginExecutionFilter>
												<groupId>org.codehaus.mojo</groupId>
												<artifactId>findbugs-maven-plugin</artifactId>
												<versionRange>[3,)</versionRange>
												<goals>
													<goal>check</goal>
												</goals>
											</pluginExecutionFilter>
											<action>
												<ignore />
											</action>
										</pluginExecution>
									</pluginExecutions>
								</lifecycleMappingMetadata>
							</configuration>
						</plugin>
					</plugins>
				</pluginManagement>
			</build>
		</profile>
	</profiles>
</project>