<?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/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<groupId>com.github.exabrial</groupId>
	<artifactId>java25-parent-pom</artifactId>
	<version>1</version>
	<packaging>pom</packaging>

	<name>${project.artifactId}</name>
	<description>General-purpose parent POM for Java 25</description>
	<url>https://github.com/exabrial/java25-parent-pom</url>

	<licenses>
		<license>
			<name>EUPL-1.2</name>
			<url>https://joinup.ec.europa.eu/sites/default/files/custom-page/attachment/2020-03/EUPL-1.2%20EN.txt</url>
			<distribution>repo</distribution>
			<comments>European Union Public Licence v1.2</comments>
		</license>
	</licenses>

	<developers>
		<developer>
			<id>exabrial</id>
			<name>Jonathan S. Fisher</name>
			<email>exabrial@gmail.com</email>
			<url>https://github.com/exabrial</url>
			<properties>
				<dev.pgp.fingerprint>871638A21A7F2C38066471420306A354336B4F0D</dev.pgp.fingerprint>
			</properties>
		</developer>
	</developers>

	<scm>
		<connection>scm:git:ssh://git@github.com/exabrial/java25-parent-pom.git</connection>
		<developerConnection>scm:git:ssh://git@github.com/exabrial/java25-parent-pom.git</developerConnection>
		<url>https://github.com/exabrial/java25-parent-pom/tree/master</url>
		<tag>java25-parent-pom-1</tag>
	</scm>

	<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<argLine />
		<downloadSources>true</downloadSources>
		<downloadJavadocs>true</downloadJavadocs>
		<static.analysis.version>1.0.0</static.analysis.version>
		<checkstyle.config.file>com.github.exabrial-${static.analysis.version}.checkstyle.xml</checkstyle.config.file>
		<pmd.ruleset.file>com.github.exabrial-${static.analysis.version}.pmd-ruleset.xml</pmd.ruleset.file>
		<spotbugs.exclude.file>com.github.exabrial-${static.analysis.version}.spotbugs-excludes.xml</spotbugs.exclude.file>
	</properties>

	<dependencyManagement>
		<dependencies>
			<dependency>
				<groupId>org.slf4j</groupId>
				<artifactId>slf4j-api</artifactId>
				<version>2.0.17</version>
			</dependency>
			<dependency>
				<groupId>org.apache.commons</groupId>
				<artifactId>commons-lang3</artifactId>
				<version>3.17.0</version>
			</dependency>
			<dependency>
				<groupId>org.apache.commons</groupId>
				<artifactId>commons-text</artifactId>
				<version>1.15.0</version>
			</dependency>
			<dependency>
				<groupId>commons-io</groupId>
				<artifactId>commons-io</artifactId>
				<version>2.22.0</version>
			</dependency>
			<dependency>
				<groupId>org.projectlombok</groupId>
				<artifactId>lombok</artifactId>
				<version>1.18.46</version>
			</dependency>
			<dependency>
				<groupId>com.github.spotbugs</groupId>
				<artifactId>spotbugs-annotations</artifactId>
				<version>4.9.8</version>
			</dependency>
			<dependency>
				<groupId>org.junit.jupiter</groupId>
				<artifactId>junit-jupiter-api</artifactId>
				<version>5.14.3</version>
			</dependency>
			<dependency>
				<groupId>org.junit.jupiter</groupId>
				<artifactId>junit-jupiter-engine</artifactId>
				<version>5.14.3</version>
			</dependency>
			<dependency>
				<groupId>org.junit.platform</groupId>
				<artifactId>junit-platform-launcher</artifactId>
				<version>1.14.3</version>
			</dependency>
			<dependency>
				<groupId>org.mockito</groupId>
				<artifactId>mockito-core</artifactId>
				<version>5.23.0</version>
			</dependency>
			<dependency>
				<groupId>org.mockito</groupId>
				<artifactId>mockito-junit-jupiter</artifactId>
				<version>5.23.0</version>
			</dependency>
			<dependency>
				<groupId>com.github.exabrial</groupId>
				<artifactId>mockito-object-injection</artifactId>
				<version>2.3.1</version>
			</dependency>
			<!-- OpenWebBeans bundles an xbean/ASM too old to read JDK 25 (class file major version 69) bytecode, so its CDI bean scanner
			dies at boot. Pin a current xbean (ASM 9.8+) so an OWB SE container starts on Java 25. Inherited by all children; inert unless
			OpenWebBeans is actually on the classpath. -->
			<dependency>
				<groupId>org.apache.xbean</groupId>
				<artifactId>xbean-finder-shaded</artifactId>
				<version>4.30</version>
			</dependency>
			<dependency>
				<groupId>org.apache.xbean</groupId>
				<artifactId>xbean-asm9-shaded</artifactId>
				<version>4.30</version>
			</dependency>
		</dependencies>
	</dependencyManagement>

	<dependencies>
		<dependency>
			<groupId>org.slf4j</groupId>
			<artifactId>slf4j-api</artifactId>
			<scope>compile</scope>
		</dependency>
		<dependency>
			<groupId>org.apache.commons</groupId>
			<artifactId>commons-lang3</artifactId>
			<scope>compile</scope>
		</dependency>
		<dependency>
			<groupId>org.apache.commons</groupId>
			<artifactId>commons-text</artifactId>
			<scope>compile</scope>
		</dependency>
		<dependency>
			<groupId>commons-io</groupId>
			<artifactId>commons-io</artifactId>
			<scope>compile</scope>
		</dependency>
		<dependency>
			<groupId>org.projectlombok</groupId>
			<artifactId>lombok</artifactId>
			<scope>provided</scope>
			<optional>true</optional>
		</dependency>
		<dependency>
			<groupId>com.github.spotbugs</groupId>
			<artifactId>spotbugs-annotations</artifactId>
			<scope>provided</scope>
		</dependency>
		<dependency>
			<groupId>org.junit.jupiter</groupId>
			<artifactId>junit-jupiter-api</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.junit.jupiter</groupId>
			<artifactId>junit-jupiter-engine</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.junit.platform</groupId>
			<artifactId>junit-platform-launcher</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.mockito</groupId>
			<artifactId>mockito-core</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.mockito</groupId>
			<artifactId>mockito-junit-jupiter</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>com.github.exabrial</groupId>
			<artifactId>mockito-object-injection</artifactId>
			<scope>test</scope>
		</dependency>
	</dependencies>

	<build>
		<resources>
			<resource>
				<directory>src/main/resources</directory>
				<filtering>false</filtering>
			</resource>
			<resource>
				<directory>src/main/resources-filtered</directory>
				<filtering>true</filtering>
			</resource>
		</resources>

		<pluginManagement>
			<plugins>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-toolchains-plugin</artifactId>
					<version>3.2.0</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-compiler-plugin</artifactId>
					<version>3.15.0</version>
				</plugin>
				<plugin>
					<groupId>org.jacoco</groupId>
					<artifactId>jacoco-maven-plugin</artifactId>
					<version>0.8.15</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-surefire-plugin</artifactId>
					<version>3.5.5</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-project-info-reports-plugin</artifactId>
					<version>3.9.0</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-gpg-plugin</artifactId>
					<version>3.2.8</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-failsafe-plugin</artifactId>
					<version>3.5.6</version>
				</plugin>
				<plugin>
					<groupId>com.github.spotbugs</groupId>
					<artifactId>spotbugs-maven-plugin</artifactId>
					<version>4.9.8.3</version>
					<dependencies>
						<dependency>
							<groupId>com.github.spotbugs</groupId>
							<artifactId>spotbugs</artifactId>
							<version>4.9.8</version>
						</dependency>
					</dependencies>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-pmd-plugin</artifactId>
					<version>3.28.0</version>
					<configuration>
						<rulesets>
							<ruleset>${settings.localRepository}/com/github/exabrial/java25-parent-pom/static-analysis-conf/${pmd.ruleset.file}</ruleset>
						</rulesets>
					</configuration>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-checkstyle-plugin</artifactId>
					<version>3.6.0</version>
					<dependencies>
						<dependency>
							<groupId>com.puppycrawl.tools</groupId>
							<artifactId>checkstyle</artifactId>
							<version>10.26.1</version>
						</dependency>
					</dependencies>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-source-plugin</artifactId>
					<version>3.4.0</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-site-plugin</artifactId>
					<version>3.22.0</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-jxr-plugin</artifactId>
					<version>3.6.0</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-surefire-report-plugin</artifactId>
					<version>3.5.6</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-clean-plugin</artifactId>
					<version>3.5.0</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-resources-plugin</artifactId>
					<version>3.5.0</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-jar-plugin</artifactId>
					<version>3.5.0</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-install-plugin</artifactId>
					<version>3.1.4</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-deploy-plugin</artifactId>
					<version>3.1.4</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-dependency-plugin</artifactId>
					<version>3.11.0</version>
				</plugin>
				<plugin>
					<groupId>org.codehaus.mojo</groupId>
					<artifactId>jdepend-maven-plugin</artifactId>
					<version>2.2.0</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-shade-plugin</artifactId>
					<version>3.6.2</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-release-plugin</artifactId>
					<version>3.3.1</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-javadoc-plugin</artifactId>
					<version>3.12.0</version>
				</plugin>
				<plugin>
					<groupId>org.codehaus.mojo</groupId>
					<artifactId>taglist-maven-plugin</artifactId>
					<version>3.2.2</version>
				</plugin>
				<plugin>
					<groupId>org.codehaus.mojo</groupId>
					<artifactId>versions-maven-plugin</artifactId>
					<version>2.21.0</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-war-plugin</artifactId>
					<version>3.5.1</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-plugin-plugin</artifactId>
					<version>3.15.2</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-assembly-plugin</artifactId>
					<version>3.8.0</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-enforcer-plugin</artifactId>
					<version>3.6.3</version>
				</plugin>
				<plugin>
					<groupId>fr.jcgay.maven.plugins</groupId>
					<artifactId>buildplan-maven-plugin</artifactId>
					<version>1.5</version>
				</plugin>
				<plugin>
					<groupId>org.simplify4u.plugins</groupId>
					<artifactId>pgpverify-maven-plugin</artifactId>
					<version>1.19.1</version>
					<dependencies>
						<dependency>
							<groupId>org.simplify4u</groupId>
							<artifactId>pgp-keys-map</artifactId>
							<version>2026.01.20</version>
						</dependency>
					</dependencies>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-antrun-plugin</artifactId>
					<version>3.2.0</version>
				</plugin>
				<plugin>
					<groupId>org.apache.rat</groupId>
					<artifactId>apache-rat-plugin</artifactId>
					<version>0.16.1</version>
				</plugin>
				<plugin>
					<groupId>org.sonatype.central</groupId>
					<artifactId>central-publishing-maven-plugin</artifactId>
					<version>0.10.0</version>
					<extensions>true</extensions>
				</plugin>
			</plugins>
		</pluginManagement>

		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-toolchains-plugin</artifactId>
				<executions>
					<execution>
						<id>toolchain-exec</id>
						<goals>
							<goal>toolchain</goal>
						</goals>
					</execution>
				</executions>
				<configuration>
					<toolchains>
						<jdk>
							<version>25</version>
						</jdk>
					</toolchains>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<configuration>
					<!-- Hilarious: https://issues.apache.org/jira/browse/MCOMPILER-209 -->
					<useIncrementalCompilation>false</useIncrementalCompilation>
					<source>25</source>
					<target>25</target>
					<release>25</release>
					<debug>true</debug>
					<compilerArgs>
						<arg>-Xlint:all,-processing,-path</arg>
					</compilerArgs>
					<annotationProcessorPaths>
						<path>
							<groupId>org.projectlombok</groupId>
							<artifactId>lombok</artifactId>
						</path>
					</annotationProcessorPaths>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-surefire-plugin</artifactId>
				<configuration>
					<includes>
						<include>**/*Test.java</include>
					</includes>
					<excludes>
						<exclude>**/*ITest.java</exclude>
					</excludes>
					<skipTests>${surefire.skip}</skipTests>
					<argLine>@{argLine} -javaagent:${project.build.directory}/mockito-agent.jar --add-opens=java.base/java.lang=ALL-UNNAMED
						--add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED
						--add-opens=java.base/java.util.concurrent=ALL-UNNAMED --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED</argLine>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-dependency-plugin</artifactId>
				<executions>
					<execution>
						<id>mockito-agent</id>
						<phase>generate-test-resources</phase>
						<goals>
							<goal>copy</goal>
						</goals>
					</execution>
				</executions>
				<configuration>
					<skip>false</skip>
					<artifactItems>
						<artifactItem>
							<groupId>org.mockito</groupId>
							<artifactId>mockito-core</artifactId>
							<type>jar</type>
							<overWrite>true</overWrite>
							<outputDirectory>${project.build.directory}/</outputDirectory>
							<destFileName>mockito-agent.jar</destFileName>
						</artifactItem>
					</artifactItems>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-failsafe-plugin</artifactId>
				<executions>
					<execution>
						<id>maven-failsafe-exec</id>
						<goals>
							<goal>integration-test</goal>
							<goal>verify</goal>
						</goals>
					</execution>
				</executions>
				<configuration>
					<includes>
						<include>**/*ITest.java</include>
					</includes>
					<skipTests>${failsafe.skip}</skipTests>
					<argLine>@{argLine} -javaagent:${project.build.directory}/mockito-agent.jar</argLine>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-war-plugin</artifactId>
				<configuration>
					<attachClasses>true</attachClasses>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-antrun-plugin</artifactId>
				<executions>
					<execution>
						<id>install-static-analysis-configs</id>
						<inherited>false</inherited>
						<phase>initialize</phase>
						<goals>
							<goal>run</goal>
						</goals>
						<configuration>
							<target>
								<mkdir dir="${settings.localRepository}/com/github/exabrial/java25-parent-pom/static-analysis-conf" />
								<copy todir="${settings.localRepository}/com/github/exabrial/java25-parent-pom/static-analysis-conf" overwrite="true">
									<fileset dir="${project.basedir}/static-analysis-conf">
										<include name="*.xml" />
									</fileset>
								</copy>
							</target>
						</configuration>
					</execution>
					<execution>
						<id>download-static-analysis-configs</id>
						<phase>initialize</phase>
						<goals>
							<goal>run</goal>
						</goals>
						<configuration>
							<target>
								<mkdir dir="${settings.localRepository}/com/github/exabrial/java25-parent-pom/static-analysis-conf" />
								<get src="https://raw.githubusercontent.com/exabrial/java25-parent-pom/master/static-analysis-conf/${checkstyle.config.file}" dest="${settings.localRepository}/com/github/exabrial/java25-parent-pom/static-analysis-conf/${checkstyle.config.file}" skipexisting="true" ignoreerrors="true" />
								<get src="https://raw.githubusercontent.com/exabrial/java25-parent-pom/master/static-analysis-conf/${pmd.ruleset.file}" dest="${settings.localRepository}/com/github/exabrial/java25-parent-pom/static-analysis-conf/${pmd.ruleset.file}" skipexisting="true" ignoreerrors="true" />
								<get src="https://raw.githubusercontent.com/exabrial/java25-parent-pom/master/static-analysis-conf/${spotbugs.exclude.file}" dest="${settings.localRepository}/com/github/exabrial/java25-parent-pom/static-analysis-conf/${spotbugs.exclude.file}" skipexisting="true" ignoreerrors="true" />
							</target>
						</configuration>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-checkstyle-plugin</artifactId>
				<configuration>
					<configLocation>${settings.localRepository}/com/github/exabrial/java25-parent-pom/static-analysis-conf/${checkstyle.config.file}</configLocation>
					<failOnViolation>true</failOnViolation>
					<logViolationsToConsole>true</logViolationsToConsole>
					<consoleOutput>true</consoleOutput>
				</configuration>
				<executions>
					<execution>
						<id>checkstyle-verify</id>
						<phase>verify</phase>
						<goals>
							<goal>check</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>com.github.spotbugs</groupId>
				<artifactId>spotbugs-maven-plugin</artifactId>
				<executions>
					<execution>
						<id>spotbugs-verify</id>
						<phase>verify</phase>
						<goals>
							<goal>check</goal>
						</goals>
					</execution>
				</executions>
				<configuration>
					<effort>max</effort>
					<threshold>low</threshold>
					<excludeFilterFiles>
						<excludeFilterFile>${settings.localRepository}/com/github/exabrial/java25-parent-pom/static-analysis-conf/${spotbugs.exclude.file}</excludeFilterFile>
						<excludeFilterFile>${basedir}/static-analysis-conf/spotbugs-excludes.xml</excludeFilterFile>
					</excludeFilterFiles>
					<plugins>
						<plugin>
							<groupId>com.h3xstream.findsecbugs</groupId>
							<artifactId>findsecbugs-plugin</artifactId>
							<version>1.14.0</version>
						</plugin>
					</plugins>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-pmd-plugin</artifactId>
				<executions>
					<execution>
						<id>cpd-verify</id>
						<phase>verify</phase>
						<goals>
							<goal>cpd-check</goal>
						</goals>
						<configuration>
							<excludeFromFailureFile>${basedir}/static-analysis-conf/cpd-excludes.properties</excludeFromFailureFile>
							<printFailingErrors>true</printFailingErrors>
						</configuration>
					</execution>
					<execution>
						<id>pmd-verify</id>
						<phase>verify</phase>
						<goals>
							<goal>check</goal>
						</goals>
						<configuration>
							<excludeFromFailureFile>${basedir}/static-analysis-conf/pmd-excludes.properties</excludeFromFailureFile>
							<printFailingErrors>true</printFailingErrors>
						</configuration>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-source-plugin</artifactId>
				<executions>
					<execution>
						<id>attach-sources</id>
						<phase>install</phase>
						<goals>
							<goal>jar-no-fork</goal>
						</goals>
						<configuration>
							<attach>true</attach>
							<includePom>true</includePom>
						</configuration>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-javadoc-plugin</artifactId>
				<executions>
					<execution>
						<id>javadocs-package</id>
						<phase>deploy</phase>
						<goals>
							<goal>jar</goal>
						</goals>
					</execution>
				</executions>
				<configuration>
					<attach>true</attach>
					<doclint>none</doclint>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-gpg-plugin</artifactId>
				<executions>
					<execution>
						<id>gpg-sign</id>
						<phase>deploy</phase>
						<goals>
							<goal>sign</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-install-plugin</artifactId>
				<executions>
					<execution>
						<id>default-install</id>
						<phase />
						<goals />
					</execution>
					<execution>
						<id>install-exec</id>
						<phase>install</phase>
						<goals>
							<goal>install</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
		</plugins>
	</build>

	<reporting>
		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-jxr-plugin</artifactId>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-pmd-plugin</artifactId>
				<configuration>
					<excludeFromFailureFile>${basedir}/static-analysis-conf/pmd-excludes.properties</excludeFromFailureFile>
					<skipEmptyReport>false</skipEmptyReport>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.jacoco</groupId>
				<artifactId>jacoco-maven-plugin</artifactId>
				<reportSets>
					<reportSet>
						<reports>
							<report>report</report>
						</reports>
					</reportSet>
				</reportSets>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-checkstyle-plugin</artifactId>
				<configuration>
					<configLocation>${settings.localRepository}/com/github/exabrial/java25-parent-pom/static-analysis-conf/${checkstyle.config.file}</configLocation>
				</configuration>
			</plugin>
			<plugin>
				<groupId>com.github.spotbugs</groupId>
				<artifactId>spotbugs-maven-plugin</artifactId>
				<configuration>
					<effort>max</effort>
					<threshold>low</threshold>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-surefire-report-plugin</artifactId>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-dependency-plugin</artifactId>
			</plugin>
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>jdepend-maven-plugin</artifactId>
			</plugin>
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>taglist-maven-plugin</artifactId>
			</plugin>
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>versions-maven-plugin</artifactId>
				<reportSets>
					<reportSet>
						<reports>
							<report>dependency-updates-report</report>
							<report>plugin-updates-report</report>
						</reports>
					</reportSet>
				</reportSets>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-plugin-plugin</artifactId>
			</plugin>
		</plugins>
	</reporting>

	<profiles>
		<profile>
			<id>skipChecks</id>
			<activation>
				<property>
					<name>skipChecks</name>
				</property>
			</activation>
			<properties>
				<rat.skip>true</rat.skip>
				<checkstyle.skip>true</checkstyle.skip>
				<cpd.skip>true</cpd.skip>
				<pmd.skip>true</pmd.skip>
				<spotbugs.skip>true</spotbugs.skip>
				<mdep.analyze.skip>true</mdep.analyze.skip>
				<mdep.skip>true</mdep.skip>
				<enforcer.skip>true</enforcer.skip>
			</properties>
		</profile>

		<profile>
			<id>skipPgp</id>
			<activation>
				<property>
					<name>skipPgp</name>
				</property>
			</activation>
			<properties>
				<pgpverify.skip>true</pgpverify.skip>
				<gpg.skip>true</gpg.skip>
			</properties>
		</profile>

		<profile>
			<id>skipTests</id>
			<activation>
				<property>
					<name>skipTests</name>
					<value>true</value>
				</property>
			</activation>
			<properties>
				<surefire.skip>true</surefire.skip>
				<failsafe.skip>true</failsafe.skip>
			</properties>
		</profile>

		<profile>
			<id>jacoco</id>
			<activation>
				<property>
					<name>jacoco</name>
				</property>
			</activation>
			<build>
				<plugins>
					<plugin>
						<groupId>org.jacoco</groupId>
						<artifactId>jacoco-maven-plugin</artifactId>
						<configuration>
							<formats>XML</formats>
						</configuration>
						<executions>
							<execution>
								<id>jacoco-prepare-agent-surefire</id>
								<phase>test-compile</phase>
								<goals>
									<goal>prepare-agent</goal>
								</goals>
								<configuration>
									<append>true</append>
								</configuration>
							</execution>
							<execution>
								<id>jacoco-report</id>
								<phase>test</phase>
								<goals>
									<goal>report</goal>
								</goals>
							</execution>
						</executions>
					</plugin>
				</plugins>
			</build>
		</profile>

		<profile>
			<!-- Publishing to Maven Central. Activate explicitly: mvn deploy -Prelease Kept out of the default build so m2e/Eclipse never
			tries to resolve the publishing extension. -->
			<id>release</id>
			<build>
				<plugins>
					<plugin>
						<groupId>org.sonatype.central</groupId>
						<artifactId>central-publishing-maven-plugin</artifactId>
						<configuration>
							<publishingServerId>ossrh</publishingServerId>
						</configuration>
					</plugin>
				</plugins>
			</build>
		</profile>
	</profiles>

	<pluginRepositories>
		<pluginRepository>
			<id>central</id>
			<name>Central Repository</name>
			<releases>
				<checksumPolicy>fail</checksumPolicy>
			</releases>
			<url>https://repo.maven.apache.org/maven2</url>
		</pluginRepository>
	</pluginRepositories>
</project>
