ppom
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency>
<groupId>com.minlessika.erp</groupId>
<artifactId>ppom</artifactId>
<version>0.6</version>
</dependency><?xml version="1.0"?>
<!--
Copyright (c) 2018-2022 Minlessika
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to read
the Software only. Permissions is hereby NOT GRANTED to use, copy, modify,
merge, publish, distribute, sublicense, and/or sell copies of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
-->
<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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.minlessika.erp</groupId>
<artifactId>ppom</artifactId>
<version>0.6</version>
<packaging>pom</packaging>
<name>parent</name>
<description>Parent POM for all Minlessika ERP Maven projects</description>
<url>https://github.com/minlessika/ppom</url>
<inceptionYear>2018</inceptionYear>
<organization>
<name>Minlessika</name>
<url>https://www.minlessika.com</url>
</organization>
<licenses>
<license>
<name>Minlessika License</name>
<url>https://github.com/minlessika/ppom/blob/master/LICENSE.txt</url>
</license>
</licenses>
<developers>
<developer>
<id>1</id>
<name>Olivier B. OURA</name>
<email>baudoliver7@gmail.com</email>
<organization>Minlessika</organization>
<organizationUrl>http://www.minlessika.com</organizationUrl>
<roles>
<role>Architect</role>
<role>Developer</role>
</roles>
<timezone>0</timezone>
</developer>
</developers>
<issueManagement>
<system>GitHub</system>
<url>https://github.com/minlessika/ppom/issues</url>
</issueManagement>
<scm>
<connection>scm:git:git://github.com/minlessika/ppom.git</connection>
<developerConnection>scm:git:git://github.com:minlessika/ppom.git</developerConnection>
<url>http://github.com/minlessika/ppom/tree/master</url>
</scm>
<distributionManagement>
<downloadUrl>https://s01.oss.sonatype.org/content/groups/public</downloadUrl>
<repository>
<id>central</id>
<url>https://central.sonatype.com/api/v1/publish</url>
</repository>
<snapshotRepository>
<id>s01.oss.sonatype.org</id>
<url>https://s01.oss.sonatype.org/content/repositories/snapshots</url>
</snapshotRepository>
<site>
<id>Minlessika.com</id>
<url>https://www.minlessika.com/</url>
</site>
</distributionManagement>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<!--
ISO 8601, see http://en.wikipedia.org/wiki/ISO_8601. This
property is defined in order to give us an ability to use ${maven.build.timestamp}
later in the file
-->
<maven.build.timestamp.format>yyyy-MM-dd HH:mm</maven.build.timestamp.format>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<junit-platform.version>5.8.2</junit-platform.version>
<javax.json.version>1.1.4</javax.json.version>
</properties>
<repositories>
<!--
You should keep it empty in your project.
@see http://www.sonatype.com/people/2009/02/why-putting-repositories-in-your-poms-is-a-bad-idea/
-->
</repositories>
<pluginRepositories>
<!--
You should keep it empty in your project.
@see http://www.sonatype.com/people/2009/02/why-putting-repositories-in-your-poms-is-a-bad-idea/
-->
</pluginRepositories>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.cactoos</groupId>
<artifactId>cactoos</artifactId>
<version>0.55.0</version>
</dependency>
<dependency>
<!--
JDBC wrapper.
@see http://jdbc.jcabi.com/
-->
<groupId>com.jcabi</groupId>
<artifactId>jcabi-jdbc</artifactId>
<version>0.17.7</version>
</dependency>
<dependency>
<!-- JSON API -->
<groupId>javax.json</groupId>
<artifactId>javax.json-api</artifactId>
<version>${javax.json.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<!-- JSON reference implementation -->
<groupId>org.glassfish</groupId>
<artifactId>javax.json</artifactId>
<version>${javax.json.version}</version>
<scope>runtime</scope>
</dependency>
<dependency>
<!-- JSR-311 JAX-RS API -->
<groupId>javax.ws.rs</groupId>
<artifactId>jsr311-api</artifactId>
<version>1.1.1</version>
<scope>provided</scope>
</dependency>
<dependency>
<!-- JAXB API -->
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
<version>2.4.0-b180830.0359</version>
<exclusions>
<exclusion>
<groupId>javax.xml.bind</groupId>
<artifactId>jsr173_api</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<!--
Google Guava
@see https://code.google.com/p/guava-libraries/
-->
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>[30.0-jre,)</version>
</dependency>
<dependency>
<!--
Commons Lang3
@see http://commons.apache.org/lang/
-->
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.12.0</version>
</dependency>
<dependency>
<!--
Commons Text
@see http://commons.apache.org/text/
-->
<groupId>org.apache.commons</groupId>
<artifactId>commons-text</artifactId>
<version>1.9</version>
</dependency>
<dependency>
<!--
Commons Collections
@see https://commons.apache.org/proper/commons-collections/
-->
<groupId>org.apache.commons</groupId>
<artifactId>commons-collections4</artifactId>
<version>4.4</version>
</dependency>
<dependency>
<!--
Commons Math3
@see http://commons.apache.org/proper/commons-math/
-->
<groupId>org.apache.commons</groupId>
<artifactId>commons-math3</artifactId>
<version>3.6.1</version>
</dependency>
<dependency>
<!--
Base64 and other codecs
@see http://commons.apache.org/codec/
-->
<groupId>commons-codec</groupId>
<artifactId>commons-codec</artifactId>
<version>1.17.1</version>
</dependency>
<dependency>
<!--
Net utils.
@see http://commons.apache.org/net/
-->
<groupId>commons-net</groupId>
<artifactId>commons-net</artifactId>
<version>3.8.0</version>
</dependency>
<dependency>
<!--
For file/stream manipulations
@see http://commons.apache.org/io/
-->
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.16.1</version>
</dependency>
<dependency>
<!--
JSR-303 Vaidation API.
-->
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
<version>2.0.1.Final</version>
</dependency>
<dependency>
<!--
JSR-303 implementation by Hibernate.
-->
<groupId>org.hibernate.validator</groupId>
<artifactId>hibernate-validator</artifactId>
<version>7.0.4.Final</version>
</dependency>
<dependency>
<!-- Required for Hibernate validator -->
<groupId>javax.el</groupId>
<artifactId>javax.el-api</artifactId>
<version>3.0.1-b06</version>
</dependency>
<dependency>
<!-- Servlet API -->
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>4.0.1</version>
<scope>provided</scope>
</dependency>
<dependency>
<!--
Compile-time annotations.
@see http://projectlombok.org/features/index.html
-->
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.24</version>
<scope>provided</scope>
</dependency>
<dependency>
<!-- XML APIs. -->
<groupId>xml-apis</groupId>
<artifactId>xml-apis</artifactId>
<!-- 2.0.2 is the latest version, don't upgrade it unless
you explicitly check it in Maven Central. Version 2.0.2 is published
there, but it's outdated (June 2007), while 2.0.2 is the latest.
-->
<version>2.0.2</version>
<!-- don't change this line, 2.0.2 is the right/latest version -->
</dependency>
<dependency>
<!--
We are using JUnit framework for unit test organization
and management. This framework is the most stable and mature
in the market. Other options considered: TestNG.
@link http://www.junit.org/
-->
<groupId>org.junit</groupId>
<artifactId>junit-bom</artifactId>
<version>${junit-platform.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<!--
Assertions and matchers for unit tests.
@link http://code.google.com/p/hamcrest/wiki/Tutorial
-->
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest</artifactId>
<version>2.2</version>
</dependency>
<dependency>
<!--
Mockito is used as a mocking library during testing.
Other options: jMock.
@link http://www.mockito.org/
-->
<groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>
<version>5.2.0</version>
<exclusions>
<exclusion>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-core</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<!-- Forward all SLF4J calls to LOG4J. -->
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>2.0.0-alpha7</version>
</dependency>
<dependency>
<!-- Use LOG4J logging facility for all loggings. -->
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
<dependency>
<!--
ANTLR3 Parser/Lexer
@link http://www.antlr.org/
-->
<groupId>org.antlr</groupId>
<artifactId>antlr-runtime</artifactId>
<version>3.5.3</version>
</dependency>
<dependency>
<groupId>org.antlr</groupId>
<artifactId>antlr4-runtime</artifactId>
<version>4.10.1</version>
</dependency>
<dependency>
<groupId>com.google.code.findbugs</groupId>
<artifactId>annotations</artifactId>
<version>3.0.1u2</version>
<scope>provided</scope>
<exclusions>
<exclusion>
<groupId>net.jcip</groupId>
<artifactId>jcip-annotations</artifactId>
</exclusion>
<exclusion>
<groupId>com.google.code.findbugs</groupId>
<artifactId>jsr305</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<pluginManagement>
<plugins>
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<version>3.1.0</version>
<dependencies>
<dependency>
<groupId>ant-contrib</groupId>
<artifactId>ant-contrib</artifactId>
<version>1.0b3</version>
<exclusions>
<exclusion>
<groupId>ant</groupId>
<artifactId>ant</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
</plugin>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>3.3.0</version>
</plugin>
<plugin>
<artifactId>maven-clean-plugin</artifactId>
<version>3.2.0</version>
</plugin>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.10.1</version>
<configuration>
<source>${maven.compiler.source}</source>
<target>${maven.compiler.target}</target>
<optimize>true</optimize>
<showWarnings>true</showWarnings>
<showDeprecation>true</showDeprecation>
<compilerArgs>
<arg>-Xlint</arg>
<arg>-Werror</arg>
<arg>-Xlint:-path</arg>
<!-- @see https://stackoverflow.com/questions/44675503/why-safevarargs-doesnt-suppress-the-warning -->
<arg>-Xlint:-varargs</arg>
<!-- @see https://blogs.oracle.com/darcy/entry/bootclasspath_older_source -->
<arg>-Xlint:-options</arg>
<!-- @see http://netbeans.org/bugzilla/show_bug.cgi?format=multiple&id=208666 -->
<!-- this is to avoid a problem with ANTLR and JDK7 -->
<arg>-Xlint:-classfile</arg>
<!-- ignore APT warnings -->
<arg>-Xlint:-processing</arg>
</compilerArgs>
<testExcludes>
<exclude>**/package-info.java</exclude>
</testExcludes>
</configuration>
</plugin>
<plugin>
<artifactId>maven-dependency-plugin</artifactId>
<version>3.3.0</version>
</plugin>
<plugin>
<artifactId>maven-deploy-plugin</artifactId>
<version>3.1.1</version>
</plugin>
<plugin>
<artifactId>maven-failsafe-plugin</artifactId>
<version>3.1.2</version>
<configuration>
<encoding>${project.build.sourceEncoding}</encoding>
<failIfNoSpecifiedTests>false</failIfNoSpecifiedTests>
<forkCount>0</forkCount>
<parallel>all</parallel>
<parallelTestsTimeoutForcedInSeconds>0</parallelTestsTimeoutForcedInSeconds>
<parallelTestsTimeoutInSeconds>0</parallelTestsTimeoutInSeconds>
<perCoreThreadCount>true</perCoreThreadCount>
<runOrder>random</runOrder>
<threadCount>8</threadCount>
<trimStackTrace>false</trimStackTrace>
</configuration>
</plugin>
<plugin>
<artifactId>maven-help-plugin</artifactId>
<version>3.2.0</version>
</plugin>
<plugin>
<artifactId>maven-install-plugin</artifactId>
<version>3.1.1</version>
<configuration>
<createChecksum>true</createChecksum>
</configuration>
</plugin>
<plugin>
<artifactId>maven-invoker-plugin</artifactId>
<version>3.5.0</version>
<configuration>
<mergeUserSettings>true</mergeUserSettings>
<cloneProjectsTo>${project.build.directory}/it</cloneProjectsTo>
<debug>false</debug>
<localRepositoryPath>${project.build.directory}/local-repo</localRepositoryPath>
<noLog>false</noLog>
<postBuildHookScript>verify</postBuildHookScript>
<preBuildHookScript>setup</preBuildHookScript>
<projectsDirectory>src/it</projectsDirectory>
<settingsFile>${basedir}/src/it/settings.xml</settingsFile>
<showErrors>true</showErrors>
<showVersion>false</showVersion>
<streamLogs>true</streamLogs>
</configuration>
</plugin>
<plugin>
<artifactId>maven-jar-plugin</artifactId>
<version>3.2.2</version>
</plugin>
<plugin>
<artifactId>maven-javadoc-plugin</artifactId>
<version>3.4.0</version>
<configuration>
<source>8</source>
<tags>
<tag>
<name>todo</name>
<placement>X</placement>
</tag>
<tag>
<name>checkstyle</name>
<placement>X</placement>
</tag>
</tags>
</configuration>
</plugin>
<plugin>
<artifactId>maven-plugin-plugin</artifactId>
<version>3.15.1</version>
</plugin>
<plugin>
<artifactId>maven-release-plugin</artifactId>
<version>3.0.1</version>
</plugin>
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>3.2.0</version>
</plugin>
<plugin>
<artifactId>maven-site-plugin</artifactId>
<version>3.12.1</version>
<dependencies>
<dependency>
<groupId>org.apache.maven.doxia</groupId>
<artifactId>doxia-module-markdown</artifactId>
<version>1.11.1</version>
</dependency>
</dependencies>
</plugin>
<plugin>
<artifactId>maven-source-plugin</artifactId>
<version>3.2.1</version>
</plugin>
<plugin>
<!--
Starts unit tests, protocols their results and creates
a summary report. It is required to send testing protocol
to the STDOUT as well, not only to the file.
-->
<artifactId>maven-surefire-plugin</artifactId>
<version>3.1.2</version>
<configuration>
<useFile>false</useFile>
<runOrder>random</runOrder>
<trimStackTrace>false</trimStackTrace>
<failIfNoTests>false</failIfNoTests>
<failIfNoSpecifiedTests>true</failIfNoSpecifiedTests>
<parallel>all</parallel>
<parallelTestsTimeoutInSeconds>0</parallelTestsTimeoutInSeconds>
<parallelTestsTimeoutForcedInSeconds>0</parallelTestsTimeoutForcedInSeconds>
<perCoreThreadCount>true</perCoreThreadCount>
<threadCount>4</threadCount>
</configuration>
</plugin>
<plugin>
<artifactId>maven-war-plugin</artifactId>
<version>3.3.2</version>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>versions-maven-plugin</artifactId>
<version>2.17.1</version>
<!-- keep it at 2.1, see #42 -->
<configuration>
<generateBackupPoms>false</generateBackupPoms>
</configuration>
</plugin>
<plugin>
<groupId>com.github.github</groupId>
<artifactId>site-maven-plugin</artifactId>
<version>0.12</version>
</plugin>
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>0.8.12</version>
</plugin>
<plugin>
<groupId>org.eluder.coveralls</groupId>
<artifactId>coveralls-maven-plugin</artifactId>
<version>4.3.0</version>
<configuration>
<timestampFormat>yyyy-MM-dd'T'HH:mm:ss</timestampFormat>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
<profiles>
<profile>
<!--
Enable unit testing. The profile is activated when you have
src/test/java directory in the project. It will add junit, hamcrest,
and mockito artifacts to the classpath ("test" scope).
-->
<id>junit</id>
<activation>
<file>
<exists>${basedir}/src/test/java</exists>
</file>
</activation>
<dependencies>
<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.hamcrest</groupId>
<artifactId>hamcrest</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
</profile>
<profile>
<!--
Enable LOG4J for testing and SLF4J binding. The profile is activated
when you have src/test/resources/log4j.properties. When this file
is present it means that you want your SLF4J logs to be sent to
LOG4J during testing time. The profile will add required bindings
to the classpath.
-->
<id>slf4j</id>
<activation>
<file>
<exists>${basedir}/src/test/resources/log4j.properties</exists>
</file>
</activation>
<dependencies>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
</profile>
<profile>
<!--
Sign artifacts before installation with GPG. To enable
this profile you should have "gpg.keyname" property defined.
-->
<id>gpg-sign</id>
<activation>
<property>
<name>gpg.keyname</name>
</property>
</activation>
<build>
<plugins>
<plugin>
<!--
To GPG-sign the artifact before deployment to foreign
repository. GPG keys have to be provided in CI
environment, and published beforehand.
@link http://www.sonatype.com/people/2010/01/how-to-generate-pgp-signatures-with-maven/
-->
<artifactId>maven-gpg-plugin</artifactId>
<version>3.2.5</version>
<executions>
<execution>
<id>sign-artifacts</id>
<phase>verify</phase>
<goals>
<goal>sign</goal>
</goals>
<configuration>
<gpgArguments>
<arg>--pinentry-mode</arg>
<arg>loopback</arg>
</gpgArguments>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>doclint-java8-disable</id>
<activation>
<jdk>[1.8,)</jdk>
</activation>
<properties>
<javadoc.opts>-Xdoclint:none</javadoc.opts>
</properties>
</profile>
<profile>
<!--
Xdoc is a static validator of XML formatting.
@see https://github.com/yegor256/xdoc/
-->
<id>xdoc</id>
<activation>
<file>
<exists>${basedir}/LICENSE.txt</exists>
</file>
</activation>
<build>
<plugins>
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<phase>verify</phase>
<configuration>
<target>
<taskdef resource="net/sf/antcontrib/antcontrib.properties" classpathref="maven.plugin.classpath"/>
<property environment="env"/>
<available file="xcop" filepath="${env.PATH}" property="xcop.present"/>
<if>
<equals arg1="${xcop.present}" arg2="true"/>
<then>
<patternset id="xcop.main">
<include name="**/*.xml"/>
<include name="**/*.xsl"/>
<include name="**/*.xsd"/>
<exclude name="**/target/**/*"/>
<exclude name=".idea/**/*"/>
</patternset>
<condition property="xcop.excludes.defined">
<isreference refid="xcop.excludes"/>
</condition>
<if>
<equals arg1="${xcop.excludes.defined}" arg2="true"/>
<then>
<fileset dir="." id="files">
<patternset refid="xcop.main"/>
<patternset refid="xcop.excludes"/>
</fileset>
<pathconvert refid="files" property="converted" pathsep=" "/>
</then>
<else>
<fileset dir="." id="files">
<patternset refid="xcop.main"/>
</fileset>
<pathconvert refid="files" property="converted" pathsep=" "/>
</else>
</if>
<condition property="os.windows">
<os family="windows"/>
</condition>
<if>
<equals arg1="${os.windows}" arg2="true"/>
<then>
<exec executable="cmd" failonerror="true">
<arg line="/c xcop"/>
<arg value="--license"/>
<arg value="LICENSE.txt"/>
<arg line="${converted}"/>
</exec>
</then>
<else>
<exec executable="xcop" failonerror="true">
<arg value="--license"/>
<arg value="LICENSE.txt"/>
<arg line="${converted}"/>
</exec>
</else>
</if>
</then>
<else>
<echo message="XCOP is not available in PATH"/>
</else>
</if>
</target>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<!--
Static quality analysis with Qulice and other tools.
This profile is supposed to be activated in continuous
integration environment, right before the final approval
of the build. It runs a number of static code analysis
tools to validate and approve the quality of source
code and the SCM repository.
@see http://www.jcabi.com/jcabi-parent/profile-qulice.html
-->
<id>qulice</id>
<build>
<plugins>
<plugin>
<!--
Qulice-maven-plugin is a compound static analysis
tool that aggregates Checkstyle, PMD, FindBugs,
CodeNarc (for Groovy code) and a few other analyzers.
Qulice also configures them correctly to enable the
most important rules.
@see http://www.qulice.com/qulice-maven-plugin/
-->
<groupId>com.qulice</groupId>
<artifactId>qulice-maven-plugin</artifactId>
<executions>
<execution>
<id>qulice-check</id>
<phase>verify</phase>
<goals>
<goal>check</goal>
</goals>
</execution>
</executions>
<configuration>
<license>file:${basedir}/LICENSE.txt</license>
</configuration>
</plugin>
</plugins>
</build>
</profile>
<profile>
<!--
The profile deploys all artifacts to s01.oss.sonatype.org
repository (if you're registered there). It also skips
default deployment plugin.
@see http://www.jcabi.com/jcabi-parent/profile-sonatype.html
-->
<id>sonatype</id>
<build>
<pluginManagement>
<plugins>
<plugin>
<artifactId>maven-deploy-plugin</artifactId>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<artifactId>maven-source-plugin</artifactId>
<executions>
<execution>
<id>jcabi-sources</id>
<configuration>
<forceCreation>true</forceCreation>
</configuration>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<!--
Generate -javadoc.jar artifact, required by Maven Central.
-->
<artifactId>maven-javadoc-plugin</artifactId>
<executions>
<execution>
<id>jcabi-javadoc</id>
<phase>package</phase>
<goals>
<goal>jar</goal>
</goals>
<configuration>
<additionalOptions>${javadoc.opts}</additionalOptions>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.sonatype.central</groupId>
<artifactId>central-publishing-maven-plugin</artifactId>
<version>0.8.0</version>
<extensions>true</extensions>
<configuration>
<publishingServerId>central</publishingServerId>
<autoPublish>true</autoPublish>
<waitUntil>validated</waitUntil>
<deploymentName>${project.version}</deploymentName>
</configuration>
</plugin>
</plugins>
</build>
</profile>
<profile>
<!--
Just run it with -Pjacoco and a coverage report will be generated
in target/site/jacoco/jacoco.xml. Then, you can upload this file
to codecov.io and enjoy the report.
-->
<id>jacoco</id>
<build>
<plugins>
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<configuration>
<output>file</output>
</configuration>
<executions>
<execution>
<id>jacoco-initialize</id>
<goals>
<goal>prepare-agent</goal>
</goals>
</execution>
<execution>
<id>jacoco-initialize-integration</id>
<goals>
<goal>prepare-agent-integration</goal>
</goals>
</execution>
<execution>
<id>jacoco-report</id>
<goals>
<goal>report</goal>
</goals>
</execution>
<execution>
<id>jacoco-report-integration</id>
<goals>
<goal>report-integration</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>