pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Approvals-Java - Approval testing library for Java. Alleviates the burden of hand-writing assertions.
~ Copyright © 2018 Write Them First!
~
~ This program is free software: you can redistribute it and/or modify
~ it under the terms of the GNU General Public License as published by
~ the Free Software Foundation, either version 3 of the License, or
~ (at your option) any later version.
~
~ This program is distributed in the hope that it will be useful,
~ but WITHOUT ANY WARRANTY; without even the implied warranty of
~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
~ GNU General Public License for more details.
~
~ You should have received a copy of the GNU General Public License
~ along with this program. If not, see <http://www.gnu.org/licenses />.
-->
<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>
<!-- BASIC INFORMATION ABOUT THE PROJECT -->
<groupId>com.colisweb</groupId>
<artifactId>approvals-java</artifactId>
<version>v0.13.4-SNAPSHOT</version>
<name>Approvals-Java</name>
<description>Approval testing library for Java. Alleviates the burden of hand-writing assertions.</description>
<inceptionYear>2018</inceptionYear>
<url>https://github.com/WriteThemFirst/approvals-java/</url>
<!-- TOOLING -->
<issueManagement>
<system>github</system>
<url>https://github.com/WriteThemFirst/approvals-java/issues</url>
</issueManagement>
<ciManagement>
<system>travis</system>
<url>https://travis-ci.org/WriteThemFirst/approvals-java</url>
</ciManagement>
<!-- SCM CONNECTION -->
<scm>
<connection>scm:git:https://github.com/WriteThemFirst/approvals-java.git</connection>
<developerConnection>scm:git:https://github.com/WriteThemFirst/approvals-java.git</developerConnection>
<url>https://github.com/WriteThemFirst/approvals-java</url>
<tag>HEAD</tag>
</scm>
<!-- LICENSE -->
<licenses>
<license>
<name>GNU GENERAL PUBLIC LICENSE Version 3</name>
<url>https://www.gnu.org/licenses/gpl-3.0.en.html</url>
<distribution>repo</distribution>
</license>
</licenses>
<!-- DEVELOPERS -->
<organization>
<name>Write Them First!</name>
<url>https://github.com/WriteThemFirst</url>
</organization>
<developers>
<developer>
<name>Michel Daviot</name>
<id>tyrcho</id>
<url>https://github.com/tyrcho</url>
</developer>
<developer>
<name>Antoine Neveux</name>
<id>aneveux</id>
<url>https://github.com/aneveux</url>
</developer>
<developer>
<name>Jean-Marc Desprez</name>
<id>jmdesprez</id>
</developer>
<developer>
<name>Aurelie Ignaszak</name>
<id>Lilous</id>
</developer>
</developers>
<!-- DISTRIBUTION -->
<distributionManagement>
<!-- https://central.sonatype.org/publish/publish-maven/ -->
<repository>
<id>ossrh</id>
<name>Sonatype</name>
<url>https://s01.oss.sonatype.org/service/local/staging/deploy/maven2/</url>
</repository>
<snapshotRepository>
<id>ossrh</id>
<name>Sonatype Snapshots</name>
<url>https://s01.oss.sonatype.org/content/repositories/snapshots</url>
</snapshotRepository>
</distributionManagement>
<!-- PROJECT PROPERTIES -->
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.compiler.source>1.8</maven.compiler.source>
<junit.jupiter.version>5.9.0</junit.jupiter.version>
<junit.platform.version>1.3.1</junit.platform.version>
</properties>
<!-- DEPENDENCIES -->
<dependencies>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-engine</artifactId>
<version>${junit.jupiter.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-api</artifactId>
<version>${junit.jupiter.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>io.github.glytching</groupId>
<artifactId>junit-extensions</artifactId>
<version>2.6.0</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.assertj</groupId>
<artifactId>assertj-core</artifactId>
<version>3.24.2</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>2.0.24</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>
<version>5.2.0</version>
<scope>test</scope>
</dependency>
</dependencies>
<!-- BUILD PLUGINS -->
<build>
<plugins>
<!-- AUTOMATED LICENSE HEADER -->
<plugin>
<groupId>com.mycila</groupId>
<artifactId>license-maven-plugin</artifactId>
<version>4.1</version>
<configuration>
<basedir>${basedir}</basedir>
<header>etc/header.txt</header>
<quiet>false</quiet>
<failIfMissing>true</failIfMissing>
<aggregate>true</aggregate>
<strictCheck>true</strictCheck>
<includes>
<include>**/src/**</include>
</includes>
<excludes>
<exclude>**/**.approved</exclude>
<exclude>**/*.approved/**</exclude>
<exclude>**/**.received</exclude>
<exclude>**/*.received/**</exclude>
<exclude>**/*.actual/**</exclude>
</excludes>
<useDefaultExcludes>true</useDefaultExcludes>
<mapping>
<ecmd>XML_STYLE</ecmd>
<mwe>XML_STYLE</mwe>
<ext>SLASHSTAR_STYLE</ext>
<xpt>XML_STYLE</xpt>
<java>SLASHSTAR_STYLE</java>
<kt>SLASHSTAR_STYLE</kt>
<aj>SLASHSTAR_STYLE</aj>
<properties>SCRIPT_STYLE</properties>
<xml>XML_STYLE</xml>
</mapping>
<useDefaultMapping>false</useDefaultMapping>
<properties>
<owner>Write Them First!</owner>
</properties>
<encoding>UTF-8</encoding>
</configuration>
<executions>
<execution>
<goals>
<goal>check</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.22.2</version>
</plugin>
<!-- TEST COVERAGE -->
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>0.8.8</version>
<executions>
<execution>
<goals>
<goal>prepare-agent</goal>
</goals>
</execution>
<execution>
<id>report</id>
<phase>test</phase>
<goals>
<goal>report</goal>
</goals>
</execution>
</executions>
</plugin>
<!-- TEST MUTATION -->
<plugin>
<groupId>org.pitest</groupId>
<artifactId>pitest-maven</artifactId>
<version>1.11.4</version>
<dependencies>
<dependency>
<groupId>org.pitest</groupId>
<artifactId>pitest-junit5-plugin</artifactId>
<version>1.1.2</version>
</dependency>
</dependencies>
</plugin>
<!-- ATTACHING SOURCE JAR WHEN PACKAGING -->
<plugin>
<artifactId>maven-source-plugin</artifactId>
<version>3.2.1</version>
<executions>
<execution>
<id>attach-sources</id>
<phase>package</phase>
<goals>
<goal>jar-no-fork</goal>
</goals>
</execution>
</executions>
</plugin>
<!-- ATTACHING JAVADOC JAR WHEN PACKAGING + MARKDOWN JAVADOC -->
<plugin>
<artifactId>maven-javadoc-plugin</artifactId>
<version>3.5.0</version>
<configuration>
<doclet>ch.raffael.doclets.pegdown.PegdownDoclet</doclet>
<docletArtifact>
<groupId>ch.raffael.pegdown-doclet</groupId>
<artifactId>pegdown-doclet</artifactId>
<version>1.1</version>
</docletArtifact>
<useStandardDocletOptions>true</useStandardDocletOptions>
</configuration>
<executions>
<execution>
<id>attach-javadocs</id>
<phase>package</phase>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<version>3.0.1</version>
<executions>
<execution>
<id>sign-artifacts</id>
<phase>verify</phase>
<goals>
<goal>sign</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.sonatype.plugins</groupId>
<artifactId>nexus-staging-maven-plugin</artifactId>
<version>1.6.13</version>
<extensions>true</extensions>
<configuration>
<serverId>ossrh</serverId>
<nexusUrl>https://s01.oss.sonatype.org/</nexusUrl>
<autoReleaseAfterClose>true</autoReleaseAfterClose>
</configuration>
</plugin>
</plugins>
</build>
</project>