Skip to content
Snippets Groups Projects
pom.xml 52.59 KiB
<?xml version="1.0" encoding="UTF-8"?>
<!--
 * See the NOTICE file distributed with this work for additional
 * information regarding copyright ownership.
 *
 * This is free software; you can redistribute it and/or modify it
 * under the terms of the GNU Lesser General Public License as
 * published by the Free Software Foundation; either version 2.1 of
 * the License, or (at your option) any later version.
 *
 * This software 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
 * Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public
 * License along with this software; if not, write to the Free
 * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
 * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-->
<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>
  <parent>
    <groupId>org.xwiki.commons</groupId>
    <artifactId>xwiki-commons-pom</artifactId>
    <version>14.0-SNAPSHOT</version>
    <!-- Note: Do NOT set the <relativePath> tag here as this can cause issues. For example imagine you're using
         Jenkins and you have the following directory structure:
             workspace/xwiki-commons
             workspace/xwiki-platform_Quality_Checks
         When the "xwiki-platform_Quality_Checks" module is built you definitely don't want its pom.xml to point to
         workspace/xwiki-commons since that job may not have been built for some time (and thus it might not be up to
         date with the latest code from the SCM, thus causing build failures that are hard to track.

         By using an empty value we force Maven to resolve the parent from the Maven repositories,
         see http://maven.apache.org/ref/3.2.3/maven-model/maven.html#class_parent
    -->
    <relativePath/>
  </parent>
  <groupId>org.xwiki.platform</groupId>
  <artifactId>xwiki-platform</artifactId>
  <name>XWiki Platform - Parent POM</name>
  <packaging>pom</packaging>
  <version>14.0-SNAPSHOT</version>
  <description>XWiki Platform - Parent POM</description>
  <properties>
    <!-- Useful for external Maven projects that extend the Platform POM. Must not be used by Platform project! -->
    <platform.version>${commons.version}</platform.version>
    <!-- Versions of XWiki dependencies used in Platform modules -->
    <rendering.version>${platform.version}</rendering.version>
    <!-- Version of HSQLDB that we use in Platform when import XARs for creating functional test environments -->
    <hsqldb.version>2.5.2</hsqldb.version>

    <!-- Dependencies versions -->
    <ckeditor.version>1.58</ckeditor.version>
    <bootstrap.version>3.4.1</bootstrap.version>
    <batik.version>1.14</batik.version>
    <restlet.version>2.3.12</restlet.version>
    <tika.version>2.2.1</tika.version>
    <pdfbox.version>2.0.25</pdfbox.version>
    <keypress.version>2.1.5</keypress.version>

    <!-- Jetty version -->
    <jetty.version>9.4.29.v20200521</jetty.version>

    <!-- Netty version -->
    <netty.version>4.1.72.Final</netty.version>

    <!-- By default check that unit tests don't output anything to the console -->
    <xwiki.surefire.captureconsole.skip>false</xwiki.surefire.captureconsole.skip>

    <!-- Follow the specifications regarding the WebJar content path. -->
    <webjar.outputDirectory>${project.build.outputDirectory}/META-INF/resources/webjars/${project.artifactId}/${project.version}</webjar.outputDirectory>

    <xwiki.extension.recommendedVersions.platform>
    <!-- The recommended version of known extensions to use -->
      ${xwiki.extension.recommendedVersions.commons},
      org.xwiki.rendering:.*/[${rendering.version}],
      org.xwiki.platform:.*/[${platform.version}]
    </xwiki.extension.recommendedVersions.platform>
    <xwiki.extension.recommendedVersions>${xwiki.extension.recommendedVersions.platform}</xwiki.extension.recommendedVersions>

    <!-- Disable release staging and directly deploy on the configured distributionManagement -->
    <xwiki.nexus.skipLocalStaging>true</xwiki.nexus.skipLocalStaging>

    <xwiki.enforcer.check-dependency-version.skip>${xwiki.enforcer.skip}</xwiki.enforcer.check-dependency-version.skip>
    <xwiki.enforcer.enforce-tika2-parsers.skip>${xwiki.enforcer.skip}</xwiki.enforcer.enforce-tika2-parsers.skip>

    <!-- Hibernate -->
    <hibernate.version>5.6.3.Final</hibernate.version>

    <!-- Versions of JDBC connectors we want to use in our distribution, in our tests and when using build tools -->
    <hsqldb.groupId>org.hsqldb</hsqldb.groupId>
    <hsqldb.artifactId>hsqldb</hsqldb.artifactId>
    <mysql.groupId>mysql</mysql.groupId>
    <mysql.artifactId>mysql-connector-java</mysql.artifactId>
    <mysql.version>8.0.27</mysql.version>
    <mariadb.groupId>org.mariadb.jdbc</mariadb.groupId>
    <mariadb.artifactId>mariadb-java-client</mariadb.artifactId>
    <mariadb.version>2.7.4</mariadb.version>
    <derby.groupId>org.apache.derby</derby.groupId>
    <derby.artifactId>derby</derby.artifactId>
    <derby.version>10.14.2.0</derby.version>
    <pgsql.groupId>org.postgresql</pgsql.groupId>
    <pgsql.artifactId>postgresql</pgsql.artifactId>
    <pgsql.version>42.3.1</pgsql.version>
    <oracle.groupId>com.oracle.ojdbc</oracle.groupId>
    <oracle.artifactId>ojdbc8</oracle.artifactId>
    <oracle.version>19.3.0.0</oracle.version>

    <!-- Versions of other software we need in our functional tests -->
    <!-- The LO version must point to the latest version from "Still" branch (LTS). When upgrading the version make
         sure the new version is available from https://downloadarchive.documentfoundation.org/libreoffice/old/ -->
    <libreoffice.version>7.1.7.2</libreoffice.version>
  </properties>
  <scm>
    <connection>scm:git:git://github.com/xwiki/xwiki-platform.git</connection>
    <developerConnection>scm:git:git@github.com:xwiki/xwiki-platform.git</developerConnection>
    <url>https://github.com/xwiki/xwiki-platform/tree/master/</url>
    <tag>stable-12.7.x</tag>
  </scm>
  <issueManagement>
    <system>jira</system>
    <url>https://jira.xwiki.org/browse/XWIKI</url>
  </issueManagement>
  <modules>
    <module>xwiki-platform-tools</module>
    <module>xwiki-platform-core</module>
  </modules>
  <!-- Dependency Management that are used in platform and in sub-projects too (like xwiki-enterprise) -->
  <dependencyManagement>
    <dependencies>
      <!-- Standard dependencies used in several modules -->
      <dependency>
        <groupId>com.mchange</groupId>
        <artifactId>mchange-commons-java</artifactId>
        <version>0.2.20</version>
      </dependency>
      <dependency>
        <groupId>com.mchange</groupId>
        <artifactId>c3p0</artifactId>
        <version>0.9.5.5</version>
      </dependency>
      <!-- Hibernate -->
      <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-core</artifactId>
        <version>${hibernate.version}</version>
        <exclusions>
          <!-- Use jakarta.transaction:jakarta.transaction-api instead to not have duplicate JARs in generated WARs -->
          <exclusion>
            <groupId>org.jboss.spec.javax.transaction</groupId>
            <artifactId>jboss-transaction-api_1.2_spec</artifactId>
          </exclusion>
          <exclusion>
            <groupId>javax.activation</groupId>
            <artifactId>javax.activation-api</artifactId>
          </exclusion>
          <exclusion>
            <groupId>javax.xml.bind</groupId>
            <artifactId>jaxb-api</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <!-- Liquibase -->
      <dependency>
        <groupId>org.liquibase</groupId>
        <artifactId>liquibase-core</artifactId>
        <version>4.6.2</version>
        <exclusions>
          <!-- Not the right id -->
          <exclusion>
            <groupId>javax.xml.bind</groupId>
            <artifactId>jaxb-api</artifactId>
          </exclusion>
        </exclusions>
      </dependency>

      <!-- Jython engine -->
      <!-- We use a customized Jython JAR here because the standard one include many library we already get as dependencies -->
      <dependency>
        <groupId>org.python</groupId>
        <artifactId>jython-slim</artifactId>
        <version>2.7.2</version>
        <exclusions>
          <!-- Not need in the context of XWiki and cause conflict with other dependencies -->
          <exclusion>
            <groupId>org.apache.ant</groupId>
            <artifactId>ant</artifactId>
          </exclusion>
        </exclusions>
      </dependency>

      <!-- Apache Tika used by several modules (Lucene, Office, etc) -->
      <dependency>
        <groupId>org.apache.tika</groupId>
        <artifactId>tika-core</artifactId>
        <version>${tika.version}</version>
      </dependency>
      <!-- Tika Parsers modules -->
      <dependency>
        <groupId>org.apache.tika</groupId>
        <artifactId>tika-parser-advancedmedia-module</artifactId>
        <version>${tika.version}</version>
        <exclusions>
          <!-- XWiki does not support JAX-RC 2 for now -->
          <exclusion>
            <groupId>javax.ws.rs</groupId>
            <artifactId>javax.ws.rs-api</artifactId>
          </exclusion>
          <!-- Wrong id -->
          <exclusion>
            <groupId>javax.annotation</groupId>
            <artifactId>javax.annotation-api</artifactId>
          </exclusion>
          <!-- Remove when is https://issues.apache.org/jira/browse/TIKA-3537 fixed -->
          <exclusion>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.apache.tika</groupId>
        <artifactId>tika-parser-scientific-module</artifactId>
        <version>${tika.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.tika</groupId>
        <artifactId>tika-parser-sqlite3-module</artifactId>
        <version>${tika.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.tika</groupId>
        <artifactId>tika-parser-crypto-module</artifactId>
        <version>${tika.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.tika</groupId>
        <artifactId>tika-parser-news-module</artifactId>
        <version>${tika.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.tika</groupId>
        <artifactId>tika-parser-miscoffice-module</artifactId>
        <version>${tika.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.tika</groupId>
        <artifactId>tika-parser-mail-module</artifactId>
        <version>${tika.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.tika</groupId>
        <artifactId>tika-parser-cad-module</artifactId>
        <version>${tika.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.tika</groupId>
        <artifactId>tika-parser-apple-module</artifactId>
        <version>${tika.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.tika</groupId>
        <artifactId>tika-parser-pdf-module</artifactId>
        <version>${tika.version}</version>
        <exclusions>
          <exclusion>
            <!-- We are using Slf4J in XWiki -->
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.apache.tika</groupId>
        <artifactId>tika-parser-pkg-module</artifactId>
        <version>${tika.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.tika</groupId>
        <artifactId>tika-parser-microsoft-module</artifactId>
        <version>${tika.version}</version>
        <exclusions>
          <!-- We want to choose the SLF4J binding only when XWiki is packaged. -->
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.apache.tika</groupId>
        <artifactId>tika-parser-xml-module</artifactId>
        <version>${tika.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.tika</groupId>
        <artifactId>tika-parser-font-module</artifactId>
        <version>${tika.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.tika</groupId>
        <artifactId>tika-parser-html-module</artifactId>
        <version>${tika.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.tika</groupId>
        <artifactId>tika-parser-code-module</artifactId>
        <version>${tika.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.tika</groupId>
        <artifactId>tika-parser-text-module</artifactId>
        <version>${tika.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.tika</groupId>
        <artifactId>tika-parser-audiovideo-module</artifactId>
        <version>${tika.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.tika</groupId>
        <artifactId>tika-parser-image-module</artifactId>
        <version>${tika.version}</version>
      </dependency>

      <!-- Rome is used in rss macro and feed api modules and in Tika -->
      <dependency>
        <groupId>rome</groupId>
        <artifactId>rome</artifactId>
        <version>1.0</version>
        <exclusions>
          <!-- Exclude JDOM since Rome depends on jdom:jdom and we want to use org.jdom:jdom -->
          <exclusion>
            <groupId>jdom</groupId>
            <artifactId>jdom</artifactId>
          </exclusion>
          <!-- We want to choose the SLF4J binding only when XWiki is packaged. -->
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging-api</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>rome</groupId>
        <artifactId>rome-fetcher</artifactId>
        <version>1.0</version>
        <!-- Exclude JDOM since Rome depends on jdom:jdom and we want to use org.jdom:jdom -->
        <exclusions>
          <exclusion>
            <groupId>jdom</groupId>
            <artifactId>jdom</artifactId>
          </exclusion>
          <!-- We want to choose the SLF4J binding only when XWiki is packaged. -->
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging-api</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>com.rometools</groupId>
        <artifactId>rome</artifactId>
        <version>1.17.0</version>
      </dependency>
      <dependency>
        <groupId>com.rometools</groupId>
        <artifactId>rome-utils</artifactId>
        <version>1.17.0</version>
      </dependency>
      <dependency>
        <!-- Replace the runtime transitive dependency we excluded above with this one which repackages the NekoHTML classes to prevent conflicts. -->
        <groupId>de.l3s.boilerpipe</groupId>
        <artifactId>boilerpipe</artifactId>
        <version>1.2.0-xwiki</version>
        <scope>runtime</scope>
      </dependency>
      <!-- Embedded in the Standard Flavor and used by the Dashboard Application (to add/edit gadgets) -->
      <dependency>
        <groupId>org.xwiki.contrib</groupId>
        <artifactId>application-ckeditor-ui</artifactId>
        <version>${ckeditor.version}</version>
        <type>xar</type>
      </dependency>
      <!-- Drawn by several transitive dependencies -->
      <dependency>
        <groupId>org.jfree</groupId>
        <artifactId>jfreechart</artifactId>
        <version>1.0.19</version>
      </dependency>
      <!-- Used directly and indirectly in various projects. -->
      <dependency>
        <groupId>joda-time</groupId>
        <artifactId>joda-time</artifactId>
        <version>2.10.13</version>
      </dependency>
      <!-- Common WebJars -->
      <dependency>
        <groupId>org.webjars</groupId>
        <artifactId>requirejs</artifactId>
        <version>2.3.6</version>
        <scope>runtime</scope>
      </dependency>
      <dependency>
        <groupId>org.webjars</groupId>
        <artifactId>jquery</artifactId>
        <version>2.2.4</version>
        <scope>runtime</scope>
      </dependency>
      <dependency>
        <groupId>org.webjars</groupId>
        <artifactId>bootstrap-select</artifactId>
        <version>1.12.0</version>
        <scope>runtime</scope>
      </dependency>
      <dependency>
        <groupId>org.webjars</groupId>
        <artifactId>bootstrap</artifactId>
        <version>${bootstrap.version}</version>
        <scope>runtime</scope>
      </dependency>
      <dependency>
        <groupId>org.webjars</groupId>
        <artifactId>Keypress</artifactId>
        <version>${keypress.version}</version>
        <scope>runtime</scope>
      </dependency>
      <dependency>
        <groupId>org.webjars</groupId>
        <artifactId>momentjs</artifactId>
        <version>2.24.0</version>
        <scope>runtime</scope>
      </dependency>
      <dependency>
        <groupId>org.webjars</groupId>
        <artifactId>bootstrap-daterangepicker</artifactId>
        <version>3.0.3</version>
        <scope>runtime</scope>
      </dependency>
      <dependency>
        <groupId>org.webjars</groupId>
        <artifactId>selectize.js</artifactId>
        <version>0.12.5</version>
        <scope>runtime</scope>
      </dependency>
      <!-- Needed for IE11 backward compatibility: this API is currently used in platform-web -->
      <dependency>
        <groupId>org.webjars.npm</groupId>
        <artifactId>url-search-params-polyfill</artifactId>
        <version>8.1.0</version>
        <scope>runtime</scope>
      </dependency>

      <!-- All Batik artifacts should be in sync -->
      <dependency>
        <groupId>org.apache.xmlgraphics</groupId>
        <artifactId>batik-svgrasterizer</artifactId>
        <version>${batik.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.xmlgraphics</groupId>
        <artifactId>batik-bridge</artifactId>
        <version>${batik.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.xmlgraphics</groupId>
        <artifactId>batik-css</artifactId>
        <version>${batik.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.xmlgraphics</groupId>
        <artifactId>batik-util</artifactId>
        <version>${batik.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.xmlgraphics</groupId>
        <artifactId>batik-codec</artifactId>
        <version>${batik.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.xmlgraphics</groupId>
        <artifactId>batik-ext</artifactId>
        <version>${batik.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.xmlgraphics</groupId>
        <artifactId>batik-extension</artifactId>
        <version>${batik.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.xmlgraphics</groupId>
        <artifactId>batik-transcoder</artifactId>
        <version>${batik.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.xmlgraphics</groupId>
        <artifactId>batik-gvt</artifactId>
        <version>${batik.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.xmlgraphics</groupId>
        <artifactId>batik-svg-dom</artifactId>
        <version>${batik.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.xmlgraphics</groupId>
        <artifactId>batik-awt-util</artifactId>
        <version>${batik.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.xmlgraphics</groupId>
        <artifactId>batik-dom</artifactId>
        <version>${batik.version}</version>
        <exclusions>
          <exclusion>
            <groupId>xalan</groupId>
            <artifactId>xalan</artifactId>
          </exclusion>
        </exclusions>
      </dependency>

      <dependency>
        <groupId>net.java.dev.jna</groupId>
        <artifactId>jna</artifactId>
        <version>5.10.0</version>
      </dependency>

      <dependency>
        <groupId>org.quartz-scheduler</groupId>
        <artifactId>quartz</artifactId>
        <version>2.3.2</version>
      </dependency>

      <dependency>
        <groupId>org.ccil.cowan.tagsoup</groupId>
        <artifactId>tagsoup</artifactId>
        <version>1.2.1</version>
      </dependency>
      <dependency>
        <groupId>org.jsoup</groupId>
        <artifactId>jsoup</artifactId>
        <version>1.14.3</version>
      </dependency>

      <!-- PDF -->
      <dependency>
        <groupId>org.apache.pdfbox</groupId>
        <artifactId>pdfbox</artifactId>
        <version>${pdfbox.version}</version>
        <exclusions>
          <!-- We want to choose the SLF4J binding only when XWiki is packaged. -->
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.apache.pdfbox</groupId>
        <artifactId>fontbox</artifactId>
        <version>${pdfbox.version}</version>
        <exclusions>
          <!-- We want to choose the SLF4J binding only when XWiki is packaged. -->
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.apache.pdfbox</groupId>
        <artifactId>pdfbox-tools</artifactId>
        <version>${pdfbox.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.pdfbox</groupId>
        <artifactId>preflight</artifactId>
        <version>${pdfbox.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.pdfbox</groupId>
        <artifactId>xmpbox</artifactId>
        <version>${pdfbox.version}</version>
        <exclusions>
          <!-- We want to choose the SLF4J binding only when XWiki is packaged. -->
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.apache.xmlgraphics</groupId>
        <artifactId>fop</artifactId>
        <version>2.3</version>
        <exclusions>
          <!-- We want to choose the SLF4J binding only when XWiki is packaged. -->
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.apache.xmlgraphics</groupId>
        <artifactId>xmlgraphics-commons</artifactId>
        <version>2.6</version>
        <exclusions>
          <!-- We want to choose the SLF4J binding only when XWiki is packaged. -->
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <!-- Needed to have a nice toggle button instead of plain checkboxes in the UI -->
      <dependency>
        <groupId>org.webjars</groupId>
        <artifactId>bootstrap-switch</artifactId>
        <version>3.3.2</version>
        <scope>runtime</scope>
      </dependency>
      <!--Used by oldcore + querymanager -->
      <dependency>
        <groupId>com.github.jsqlparser</groupId>
        <artifactId>jsqlparser</artifactId>
        <version>4.2</version>
      </dependency>

      <!-- JNR -->
      <dependency>
        <groupId>com.github.jnr</groupId>
        <artifactId>jffi</artifactId>
        <version>1.3.8</version>
      </dependency>
      <dependency>
        <groupId>com.github.jnr</groupId>
        <artifactId>jnr-constants</artifactId>
        <version>0.10.3</version>
      </dependency>
      <dependency>
        <groupId>com.github.jnr</groupId>
        <artifactId>jnr-ffi</artifactId>
        <version>2.2.10</version>
      </dependency>
      <dependency>
        <groupId>com.github.jnr</groupId>
        <artifactId>jnr-netdb</artifactId>
        <version>1.2.0</version>
      </dependency>
      <dependency>
        <groupId>com.github.jnr</groupId>
        <artifactId>jnr-posix</artifactId>
        <version>3.1.14</version>
      </dependency>
      <dependency>
        <groupId>com.github.jnr</groupId>
        <artifactId>jnr-x86asm</artifactId>
        <version>1.0.2</version>
      </dependency>

      <!-- Carte Utils -->
      <dependency>
        <groupId>io.sf.carte</groupId>
        <artifactId>css4j</artifactId>
        <version>3.6.1</version>
      </dependency>

      <!-- Carte CSS4J -->
      <dependency>
        <groupId>io.sf.carte</groupId>
        <artifactId>carte-util</artifactId>
        <version>3.5.1</version>
      </dependency>
      <dependency>
        <groupId>io.sf.carte</groupId>
        <artifactId>css4j-dom4j</artifactId>
        <version>3.6.0</version>
      </dependency>

      <!-- Carte XML DTD -->
      <dependency>
        <groupId>io.sf.carte</groupId>
        <artifactId>xml-dtd</artifactId>
        <!-- Note: has a different release cycle than CSS4J -->
        <version>3.5.2</version>
      </dependency>

      <!-- Restlet -->
      <dependency>
        <groupId>org.restlet.jse</groupId>
        <artifactId>org.restlet.ext.jaxrs</artifactId>
        <version>${restlet.version}</version>
        <exclusions>
          <!-- Already part of Java SE 6 -->
          <exclusion>
            <groupId>javax.xml.stream</groupId>
            <artifactId>stax-api</artifactId>
          </exclusion>
          <!-- We use a more accurate and up to date JSON framework version -->
          <exclusion>
            <artifactId>org.restlet.lib.org.json</artifactId>
            <groupId>org.restlet.jse</groupId>
          </exclusion>
          <!-- The recent one have a different id so we can't rely on dependencyManagement -->
          <exclusion>
            <groupId>javax.mail</groupId>
            <artifactId>mail</artifactId>
          </exclusion>
          <!-- Restlet does not declare the right version of JAX-RS API... -->
          <exclusion>
            <groupId>javax.ws.rs</groupId>
            <artifactId>javax.ws.rs-api</artifactId>
          </exclusion>
          <!-- Restlet does not use the right artifact for JAXB implementation -->
          <exclusion>
            <artifactId>jaxb-impl</artifactId>
            <groupId>com.sun.xml.bind</groupId>
          </exclusion>
          <!-- Restlet does not use the right artifact for JSON -->
          <exclusion>
            <artifactId>json</artifactId>
            <groupId>org.json</groupId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
      <!-- We need Jackson for a proper JSON representation of our REST resources.
          See XWIKI-9136: Rest API JSON does not retrieve inherited fields -->
        <groupId>org.restlet.jse</groupId>
        <artifactId>org.restlet.ext.jackson</artifactId>
        <version>${restlet.version}</version>
        <scope>runtime</scope>
        <exclusions>
          <!-- Wrong version of Woodstox -->
          <exclusion>
            <groupId>org.codehaus.woodstox</groupId>
            <artifactId>woodstox-core-asl</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
      <!-- We need a JAXB converter for XML representation because we model our REST resources using JAXB. Jackson (see
          above) has a module that understands JAXB annotations but the output of the Restlet Jackson converter is not very
          good (missing XML declaration and namespace, attributes serialized as elements) so we prefer to use a dedicated
          JAXB converter for XML representation. -->
        <groupId>org.restlet.jse</groupId>
        <artifactId>org.restlet.ext.jaxb</artifactId>
        <version>${restlet.version}</version>
        <scope>runtime</scope>
        <exclusions>
          <!-- Already part of Java SE 6 -->
          <exclusion>
            <artifactId>stax-api</artifactId>
            <groupId>javax.xml.stream</groupId>
          </exclusion>
          <!-- Restlet does not use the right artifact for JAXB implementation -->
          <exclusion>
            <artifactId>jaxb-impl</artifactId>
            <groupId>com.sun.xml.bind</groupId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.restlet.jse</groupId>
        <artifactId>org.restlet</artifactId>
        <version>${restlet.version}</version>
      </dependency>
      <dependency>
        <groupId>org.restlet.jee</groupId>
        <artifactId>org.restlet.ext.servlet</artifactId>
        <version>${restlet.version}</version>
        <exclusions>
          <exclusion>
            <!-- We use "se" version of the client API -->
            <groupId>org.restlet.jee</groupId>
            <artifactId>org.restlet</artifactId>
          </exclusion>
        </exclusions>
      </dependency>

      <!-- Used by solr-core and closure-compiler -->
      <dependency>
        <groupId>com.google.re2j</groupId>
        <artifactId>re2j</artifactId>
        <version>1.4</version>
      </dependency>

      <!-- Mails -->
      <dependency>
        <groupId>com.icegreen</groupId>
        <artifactId>greenmail-junit5</artifactId>
        <version>1.6.4</version>
      </dependency>

      <!-- Make sure to use a version of the Jetty client libraries matching the Jetty version we package -->
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-alpn-client</artifactId>
        <version>${jetty.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-alpn-java-client</artifactId>
        <version>${jetty.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-client</artifactId>
        <version>${jetty.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-http</artifactId>
        <version>${jetty.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-io</artifactId>
        <version>${jetty.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-util</artifactId>
        <version>${jetty.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.http2</groupId>
        <artifactId>http2-client</artifactId>
        <version>${jetty.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.http2</groupId>
        <artifactId>http2-common</artifactId>
        <version>${jetty.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.http2</groupId>
        <artifactId>http2-hpack</artifactId>
        <version>${jetty.version}</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty.http2</groupId>
        <artifactId>http2-http-client-transport</artifactId>
        <version>${jetty.version}</version>
      </dependency>
      <!-- Same for for some reusable Jetty server libraries -->
      <dependency>
        <groupId>org.eclipse.jetty.http2</groupId>
        <artifactId>jetty-websocket</artifactId>
        <version>${jetty.version}</version>
      </dependency>

      <!-- Netty is used by several dependencies -->
      <dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-common</artifactId>
        <version>${netty.version}</version>
      </dependency>
      <dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-handler</artifactId>
        <version>${netty.version}</version>
      </dependency>
      <dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-resolver</artifactId>
        <version>${netty.version}</version>
      </dependency>
      <dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-transport</artifactId>
        <version>${netty.version}</version>
      </dependency>
      <dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-codec</artifactId>
        <version>${netty.version}</version>
      </dependency>
      <dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-buffer</artifactId>
        <version>${netty.version}</version>
      </dependency>

      <!-- Jetbrain's annotations are used by several dependencies -->
      <dependency>
        <groupId>org.jetbrains</groupId>
        <artifactId>annotations</artifactId>
        <version>19.0.0</version>
      </dependency>
    </dependencies>
  </dependencyManagement>
  <build>
    <extensions>
      <!-- Needed to add support for the "webjar" packaging -->
      <extension>
        <groupId>org.xwiki.commons</groupId>
        <artifactId>xwiki-commons-tool-webjar-handlers</artifactId>
        <version>${commons.version}</version>
      </extension>
      <!-- Needed to add support for the "xar" packaging -->
      <extension>
        <groupId>org.xwiki.commons</groupId>
        <artifactId>xwiki-commons-tool-xar-handlers</artifactId>
        <version>${commons.version}</version>
      </extension>
    </extensions>
    <pluginManagement>
      <plugins>
        <plugin>
          <groupId>org.xwiki.commons</groupId>
          <artifactId>xwiki-commons-tool-xar-plugin</artifactId>
          <version>${commons.version}</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-surefire-plugin</artifactId>
          <configuration>
            <includes>
              <include>**/*Test.java</include>
              <include>**/*IntegrationTests.java</include>
            </includes>
            <!-- Verify that unit tests don't output anything to stdout/stderr -->
            <systemProperties combine.children="append">
              <!-- This property makes it simple for some module to exclude the check (for example for functional
                   tests) -->
              <property>
                <name>xwiki.surefire.captureconsole.skip</name>
                <value>${xwiki.surefire.captureconsole.skip}</value>
              </property>
            </systemProperties>
          </configuration>
          <dependencies>
            <!-- Used to automatically register our custom JUnit5 Extensions using the service loader mechanism.
                 We also need to have the JAR containing our extensions visible to JUnit5's ClassLoader. This is
                 done here and not in the top level commons pom.xml, as otherwise it would cause a cyclic dependency.
            -->
            <dependency>
              <groupId>org.xwiki.commons</groupId>
              <artifactId>xwiki-commons-tool-test-simple</artifactId>
              <version>${commons.version}</version>
            </dependency>
          </dependencies>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-failsafe-plugin</artifactId>
          <dependencies>
            <!-- Used to automatically register our custom JUnit5 Extensions using the service loader mechanism.
                 We also need to have the JAR containing our extensions visible to JUnit5's ClassLoader. This is
                 done here and not in the top level commons pom.xml, as otherwise it would cause a cyclic dependency.
            -->
            <dependency>
              <groupId>org.xwiki.commons</groupId>
              <artifactId>xwiki-commons-tool-test-simple</artifactId>
              <version>${commons.version}</version>
            </dependency>
          </dependencies>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-javadoc-plugin</artifactId>
          <configuration>
            <tags>
              <!-- Tag to document a xwiki.cfg configuration file property behavior -->
              <tag>
                <name>xwiki.xwikicfg</name>
                <placement>a</placement>
                <head>xwiki.cfg configuration:</head>
              </tag>
            </tags>
          </configuration>
        </plugin>
        <!-- Overwrite various properties while generating extension descriptors -->
        <plugin>
          <groupId>org.xwiki.commons</groupId>
          <artifactId>xwiki-commons-tool-extension-plugin</artifactId>
          <version>${commons.version}</version>
          <configuration>
            <extensionOverrides>
              <extensionOverride>
                <id>org.slf4j:jcl-over-slf4j</id>
                <!-- Should be ok for any version of jcl-over-slf4j (since commons-logging is dead) -->
                <features>commons-logging:commons-logging/1.2</features>
              </extensionOverride>
              <extensionOverride>
                <id>org.slf4j:log4j-over-slf4j</id>
                <features>
                  <!-- Should be ok for any version of log4j-over-slf4j (since log4j 1.x is dead) -->
                  log4j:log4j/1.2.17,

                  <!-- Does not make sense to have both at the same time -->
                  org.slf4j:slf4j-log4j12
                </features>
              </extensionOverride>
              <extensionOverride>
                <id>org.python:jython-slim</id>
                <features>
                  org.python:jython,
                  org.python:jython-standalone
                </features>
              </extensionOverride>
              <!-- We've moved to Dom4J 2.0.0+ which has a new groupId (dom4j -> org.dom4j) and thus extensions of XWiki
                   may depend on dom4j:dom4j:1.6 and without this they would install dom4j instead of using the version
                   provided by the platform -->
              <extensionOverride>
                <id>org.dom4j:dom4j</id>
                <features>dom4j:dom4j</features>
              </extensionOverride>
              <extensionOverride>
                <!-- Right id of the JAXB API -->
                <id>jakarta.xml.bind:jakarta.xml.bind-api</id>
                <features>
                  javax.xml.bind:jaxb-api
                </features>
              </extensionOverride>
              <extensionOverride>
                <!-- Right id of the JAXB reference implementation -->
                <id>org.glassfish.jaxb:jaxb-runtime</id>
                <features>
                  com.sun.xml.bind:jaxb-impl,
                  org.glassfish.jaxb:jaxb-core,
                  com.sun.xml.bind:jaxb-core
                </features>
              </extensionOverride>
              <extensionOverride>
                <!-- Open Java is the same as JSON-Java but with a different license -->
                <id>com.tdunning:json</id>
                <features>org.json:json/20180130</features>
              </extensionOverride>
              <extensionOverride>
                <!-- Embbed javax.el:javax.el-api -->
                <id>org.glassfish:javax.el</id>
                <features>javax.el:javax.el-api</features>
              </extensionOverride>

              <!-- Right id of the The Bouncy Castle Crypto packages -->
              <extensionOverride>
                <id>org.bouncycastle:bcprov-jdk15on</id>
                <features>
                  bouncycastle:bcprov-jdk16/140,
                  bouncycastle:bcprov-jdk15/140,
                  bouncycastle:bcprov-jdk14/140,
                  bouncycastle:bcprov-jdk13/140,
                  bouncycastle:bcprov-jdk12/140,
                  org.bouncycastle:bcprov-jdk16,
                  org.bouncycastle:bcprov-jdk15,
                  org.bouncycastle:bcprov-jdk14,
                  org.bouncycastle:bcprov-jdk13,
                  org.bouncycastle:bcprov-jdk12,
                  org.bouncycastle:bcprov-jdk15to18
                </features>
              </extensionOverride>
              <extensionOverride>
                <id>org.bouncycastle:bcpkix-jdk15on</id>
                <features>
                  bouncycastle:bcpkix-jdk16/140,
                  bouncycastle:bcpkix-jdk15/140,
                  bouncycastle:bcpkix-jdk14/140,
                  bouncycastle:bcpkix-jdk13/140,
                  bouncycastle:bcpkix-jdk12/140,
                  org.bouncycastle:bcpkix-jdk16,
                  org.bouncycastle:bcpkix-jdk15,
                  org.bouncycastle:bcpkix-jdk14,
                  org.bouncycastle:bcpkix-jdk13,
                  org.bouncycastle:bcpkix-jdk12,
                  org.bouncycastle:bcpkix-jdk15to18
                </features>
              </extensionOverride>
              <extensionOverride>
                <id>org.bouncycastle:bcmail-jdk15on</id>
                <features>
                  bouncycastle:bcmail-jdk16/140,
                  bouncycastle:bcmail-jdk15/140,
                  bouncycastle:bcmail-jdk14/140,
                  bouncycastle:bcmail-jdk13/140,
                  bouncycastle:bcmail-jdk12/140,
                  org.bouncycastle:bcmail-jdk16,
                  org.bouncycastle:bcmail-jdk15,
                  org.bouncycastle:bcmail-jdk14,
                  org.bouncycastle:bcmail-jdk13,
                  org.bouncycastle:bcmail-jdk12,
                  org.bouncycastle:bcmail-jdk15to18
                </features>
              </extensionOverride>
              <extensionOverride>
                <id>commons-beanutils:commons-beanutils</id>
                <features>commons-beanutils:commons-beanutils-core</features>
              </extensionOverride>
              <extensionOverride>
                <id>org.jdom:jdom</id>
                <features>jdom:jdom</features>
              </extensionOverride>
              <extensionOverride>
                <id>com.sun.mail:jakarta.mail</id>
                <features>
                  javax.mail:mail,
                  javax.mail:mailapi,
                  com.sun.mail:javax.mail,
                  jakarta.mail:jakarta.mail-api
                </features>
              </extensionOverride>
              <extensionOverride>
                <id>jakarta.annotation:jakarta.annotation-api</id>
                <features>
                  javax.annotation:jsr250-api,
                  javax.annotation:javax.annotation-api
                </features>
              </extensionOverride>
              <extensionOverride>
                <id>xml-apis:xml-apis</id>
                <features>xerces:xmlParserAPIs/2.6.2</features>
              </extensionOverride>
              <extensionOverride>
                <id>xerces:xercesImpl</id>
                <features>xerces:xerces-impl</features>
              </extensionOverride>
              <extensionOverride>
                <id>com.google.inject:guice:no_aop</id>
                <features>com.google.inject:guice</features>
              </extensionOverride>
              <extensionOverride>
                <id>net.sf.json-lib:json-lib:jdk15</id>
                <features>
                  net.sf.json-lib:json-lib,
                  net.sf.json-lib:json-lib:jdk13
                </features>
              </extensionOverride>
              <extensionOverride>
                <id>com.sun.activation:jakarta.activation</id>
                <features>
                  javax.activation:activation,
                  javax.activation:javax.activation-api,
                  com.sun.activation:javax.activation,
                  jakarta.activation:jakarta.activation-api
                </features>
              </extensionOverride>
              <extensionOverride>
                <id>com.google.code.findbugs:jsr305</id>
                <features>com.google.code.findbugs:annotations</features>
              </extensionOverride>
              <extensionOverride>
                <id>jakarta.transaction:jakarta.transaction-api</id>
                <features>
                  javax.transaction:javax.transaction-api,
                  javax.transaction:jta,
                  org.jboss.spec.javax.transaction:jboss-transaction-api_1.2_spec
                </features>
              </extensionOverride>
              <extensionOverride>
                <id>org.ow2.asm:asm</id>
                <features>asm:asm</features>
              </extensionOverride>
              <extensionOverride>
                <id>cglib:cglib</id>
                <features>cglib:cglib-nodep</features>
              </extensionOverride>
              <extensionOverride>
                <id>org.hibernate.validator:hibernate-validator</id>
                <features>org.hibernate:hibernate-validator</features>
              </extensionOverride>
              <extensionOverride>
                <id>jakarta.validation:jakarta.validation-api</id>
                <features>javax.validation:validation-api</features>
              </extensionOverride>
            </extensionOverrides>
          </configuration>
        </plugin>
      </plugins>
    </pluginManagement>
    <plugins>
      <plugin>
        <!-- Apply the Checkstyle configurations defined in the top level pom.xml file -->
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-checkstyle-plugin</artifactId>
      </plugin>
      <!-- Check license headers -->
      <plugin>
        <groupId>com.mycila</groupId>
        <artifactId>license-maven-plugin</artifactId>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-enforcer-plugin</artifactId>
        <executions>
          <!-- Verify that all org.xwiki.commons dependencies have a version specified as:
               - ${commons.version}
               Also verifies that all org.xwiki.rendering dependencies have a version specified as:
               - ${rendering.version}
               Also verifies that all org.xwiki.platform dependencies have a version specified either as:
               - ${project.version}
               - [${project.version}] (single version specified as a version range)
               - ${platform.version}
          -->
          <execution>
            <id>check-dependency-version</id>
            <goals>
              <goal>enforce</goal>
            </goals>
            <configuration>
              <rules>
                <validateDependencyVersion implementation="org.xwiki.tool.enforcer.ValidateDependencyVersion">
                  <versionCheck>
                    <groupIdPrefix>org.xwiki.commons</groupIdPrefix>
                    <allowedVersionRegex>\$\{commons.version\}</allowedVersionRegex>
                  </versionCheck>
                  <versionCheck>
                    <groupIdPrefix>org.xwiki.rendering</groupIdPrefix>
                    <allowedVersionRegex>\$\{rendering.version\}</allowedVersionRegex>
                  </versionCheck>
                  <versionCheck>
                    <groupIdPrefix>org.xwiki.platform</groupIdPrefix>
                    <allowedVersionRegex>\$\{project.version\}|\[\$\{project.version\}\]|${platform.version}</allowedVersionRegex>
                  </versionCheck>
                </validateDependencyVersion>
              </rules>
              <skip>${xwiki.enforcer.check-dependency-version.skip}</skip>
            </configuration>
          </execution>
          <!-- Make sure new Tika 2 parsers modules are used -->
          <execution>
            <id>enforce-tika2-parsers</id>
            <goals>
              <goal>enforce</goal>
            </goals>
            <configuration>
              <skip>${xwiki.enforcer.enforce-tika2-parsers.skip}</skip>
              <rules>
                <bannedDependencies>
                  <searchTransitive>true</searchTransitive>
                  <message>
                    Use new Tika 2 parsers modules (or xwiki-platform-tika-parsers)
                  </message>
                  <excludes>
                    <exclude>org.apache.tika:tika-parsers</exclude>
                  </excludes>
                </bannedDependencies>
              </rules>
            </configuration>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>
  <profiles>
    <profile>
      <id>distribution</id>
      <modules>
        <module>xwiki-platform-distribution</module>
      </modules>
    </profile>
    <profile>
      <id>clover</id>
      <properties>
        <!-- Don't check that unit tests don't output anything to the console since for example Clover will output
             messages such as "Updating existing database at '...'." during tests! -->
        <xwiki.surefire.captureconsole.skip>true</xwiki.surefire.captureconsole.skip>
      </properties>
      <build>
        <pluginManagement>
          <plugins>
            <!-- Add the Clover JAR to the Packager plugin runtime classpath since the Packager plugin uses java classes
                 that have been instrumented with Clover (XWiki oldcore for example) -->
            <plugin>
              <groupId>org.xwiki.platform</groupId>
              <artifactId>xwiki-platform-tool-packager-plugin</artifactId>
              <dependencies>
                <dependency>
                  <groupId>org.openclover</groupId>
                  <artifactId>clover</artifactId>
                  <version>${clover.version}</version>
                </dependency>
              </dependencies>
            </plugin>
            <!-- Add the Clover JAR to the Extension plugin runtime classpath since the Extension plugin uses java
                 classes that have been instrumented with Clover -->
            <plugin>
              <groupId>org.xwiki.commons</groupId>
              <artifactId>xwiki-commons-tool-extension-plugin</artifactId>
              <dependencies>
                <dependency>
                  <groupId>org.openclover</groupId>
                  <artifactId>clover</artifactId>
                  <version>${clover.version}</version>
                </dependency>
              </dependencies>
            </plugin>
          </plugins>
        </pluginManagement>
      </build>
    </profile>
    <profile>
      <!-- To be executed when building snapshots. This allows to not have to have a special settings.xml file
           when building snapshots while not incurring the downside of specifying a maven remote repo for releases,
           see https://blog.sonatype.com/2009/02/why-putting-repositories-in-your-poms-is-a-bad-idea/ -->
      <id>snapshot</id>
      <pluginRepositories>
        <pluginRepository>
          <id>xwiki-snapshots</id>
          <name>XWiki Nexus Plugin Snapshot Repository Proxy</name>
          <url>https://nexus.xwiki.org/nexus/content/groups/public-snapshots</url>
          <releases>
            <enabled>false</enabled>
          </releases>
          <snapshots>
            <enabled>true</enabled>
          </snapshots>
        </pluginRepository>
        <pluginRepository>
          <id>xwiki-releases</id>
          <name>XWiki Nexus Plugin Releases Repository Proxy</name>
          <url>https://nexus.xwiki.org/nexus/content/groups/public</url>
          <releases>
            <enabled>true</enabled>
          </releases>
          <snapshots>
            <enabled>false</enabled>
          </snapshots>
        </pluginRepository>
      </pluginRepositories>
      <repositories>
        <repository>
          <id>xwiki-snapshots</id>
          <name>XWiki Nexus Snapshot Repository Proxy</name>
          <url>https://nexus.xwiki.org/nexus/content/groups/public-snapshots</url>
          <releases>
            <enabled>false</enabled>
          </releases>
          <snapshots>
            <enabled>true</enabled>
          </snapshots>
        </repository>
        <repository>
          <id>xwiki-releases</id>
          <name>XWiki Nexus Releases Repository Proxy</name>
          <url>https://nexus.xwiki.org/nexus/content/groups/public</url>
          <releases>
            <enabled>true</enabled>
          </releases>
          <snapshots>
            <enabled>false</enabled>
          </snapshots>
        </repository>
      </repositories>
    </profile>
  </profiles>
  <distributionManagement>
    <repository>
      <id>nexus.xwiki.org</id>
      <name>XWiki Maven Remote Repository for Releases</name>
      <url>https://nexus.xwiki.org/nexus/content/repositories/releases/</url>
    </repository>
  </distributionManagement>
</project>