<?xml version="1.0" encoding="UTF-8"?>
<!--
  Licensed to the Apache Software Foundation (ASF) under one or more
  contributor license agreements.  See the NOTICE file distributed with
  this work for additional information regarding copyright ownership.
  The ASF licenses this file to You under the Apache License, Version 2.0
  (the "License"); you may not use this file except in compliance with
  the License.  You may obtain a copy of the License at

       http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.
-->
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>org.apache</groupId>
    <artifactId>apache</artifactId>
    <version>23</version>
    <relativePath></relativePath>
  </parent>
  <groupId>org.apache.ignite</groupId>
  <artifactId>ignite-parent</artifactId>
  <version>2.13.0</version>
  <packaging>pom</packaging>
  <description>Apache Ignite® is a Distributed Database For High-Performance Computing With In-Memory Speed.</description>
  <url>https://ignite.apache.org</url>
  <licenses>
    <license>
      <name>The Apache Software License, Version 2.0</name>
      <url>https://www.apache.org/licenses/LICENSE-2.0.txt</url>
    </license>
  </licenses>
  <mailingLists>
    <mailingList>
      <name>Ignite Dev List</name>
      <subscribe>dev-subscribe@ignite.apache.org</subscribe>
      <unsubscribe>dev-unsubscribe@ignite.apache.org</unsubscribe>
      <post>dev@ignite.apache.org</post>
      <archive>https://mail-archives.apache.org/mod_mbox/ignite-dev</archive>
    </mailingList>
    <mailingList>
      <name>Ignite User List</name>
      <subscribe>user-subscribe@ignite.apache.org</subscribe>
      <unsubscribe>user-unsubscribe@ignite.apache.org</unsubscribe>
      <post>user@ignites.apache.org</post>
      <archive>https://mail-archives.apache.org/mod_mbox/ignite-user/</archive>
    </mailingList>
  </mailingLists>
  <scm>
    <connection>scm:git:https://gitbox.apache.org/repos/asf/ignite.git</connection>
    <developerConnection>scm:git:https://gitbox.apache.org/repos/asf/ignite.git</developerConnection>
    <url>https://gitbox.apache.org/repos/asf/ignite.git</url>
  </scm>
  <issueManagement>
    <system>jira</system>
    <url>https://issues.apache.org/jira/browse/IGNITE</url>
  </issueManagement>
  <ciManagement>
    <system>teamcity</system>
    <url>https://ci.ignite.apache.org/</url>
  </ciManagement>
  <properties>
    <jaxb.impl.version>2.1.14</jaxb.impl.version>
    <camel.version>2.22.0</camel.version>
    <jmh.version>1.13</jmh.version>
    <scala210.library.version>2.10.7</scala210.library.version>
    <javax.cache.tck.version>1.1.0</javax.cache.tck.version>
    <osgi.import.package>*</osgi.import.package>
    <osgi.fail.ok>false</osgi.fail.ok>
    <hamcrest.version>2.2</hamcrest.version>
    <javadoc.opts>-Xdoclint:none</javadoc.opts>
    <postgres.connector.version>42.3.3</postgres.connector.version>
    <maven.build.timestamp.format>MMMM d yyyy</maven.build.timestamp.format>
    <spark.hadoop.version>2.6.5</spark.hadoop.version>
    <flattenMode>clean</flattenMode>
    <slf4j16.version>1.6.4</slf4j16.version>
    <jnr.posix.version>3.1.15</jnr.posix.version>
    <checkstyle.puppycrawl.version>8.45</checkstyle.puppycrawl.version>
    <update.notifier.enabled.by.default>true</update.notifier.enabled.by.default>
    <lucene.version>7.4.0</lucene.version>
    <maven.bundle.plugin.version>3.5.0</maven.bundle.plugin.version>
    <httpclient.version>4.5.13</httpclient.version>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <twitter.hbc.version>2.2.0</twitter.hbc.version>
    <spring41.osgi.feature.version>4.1.7.RELEASE_1</spring41.osgi.feature.version>
    <spark24.version>2.4.4</spark24.version>
    <jetbrains.annotations.version>16.0.3</jetbrains.annotations.version>
    <commons.io.version>2.6</commons.io.version>
    <project.build.outputTimestamp>2020-01-22T15:10:15Z</project.build.outputTimestamp>
    <sourceReleaseAssemblyDescriptor>source-release</sourceReleaseAssemblyDescriptor>
    <javax.cache.bundle.version>1.0.0_1</javax.cache.bundle.version>
    <maven.javadoc.plugin.version>3.2.0</maven.javadoc.plugin.version>
    <netlibjava.version>1.1.2</netlibjava.version>
    <mockito.version>3.4.6</mockito.version>
    <jna.version>4.5.2</jna.version>
    <spark24.hadoop.version>2.6.5</spark24.hadoop.version>
    <yammer.metrics.annotation.version>2.2.0</yammer.metrics.annotation.version>
    <netty.version>4.1.75.Final</netty.version>
    <maven.checkstyle.plugin.version>3.1.1</maven.checkstyle.plugin.version>
    <log4j2.version>2.17.1</log4j2.version>
    <h2.version>1.4.197</h2.version>
    <snappy.version>1.1.7.2</snappy.version>
    <oro.bundle.version>2.0.8_6</oro.bundle.version>
    <organization.logo>https://www.apache.org/images/asf_logo_wide_2016.png</organization.logo>
    <ignite.version>2.13.0</ignite.version>
    <lz4.version>1.5.0</lz4.version>
    <storm.version>1.1.1</storm.version>
    <osgi.export.package>{local-packages}</osgi.export.package>
    <doxygen.exec>doxygen</doxygen.exec>
    <javax.cache.version>1.0.0</javax.cache.version>
    <ezmorph.version>1.0.6</ezmorph.version>
    <osgi.enterprise.version>5.0.0</osgi.enterprise.version>
    <karaf.version>4.0.2</karaf.version>
    <maven.model.version>3.8.4</maven.model.version>
    <opencensus.version>0.22.0</opencensus.version>
    <jtidy.version>r938</jtidy.version>
    <scala.library.version>2.11.12</scala.library.version>
    <ignite-kafka-ext.version>1.0.0</ignite-kafka-ext.version>
    <jotm.version>2.3.1-M1</jotm.version>
    <osgi.core.version>5.0.0</osgi.core.version>
    <maven.compiler.target>1.8</maven.compiler.target>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
    <hadoop.version>2.9.1</hadoop.version>
    <gpg.useagent>true</gpg.useagent>
    <osgi.embed.transitive>false</osgi.embed.transitive>
    <commons.collections.version>3.2.2</commons.collections.version>
    <scala210.jline.version>2.10.7</scala210.jline.version>
    <surefire.version>3.0.0-M4</surefire.version>
    <yardstick.version>0.8.3</yardstick.version>
    <cron4j.version>2.2.5</cron4j.version>
    <scala.test.version>2.2.6</scala.test.version>
    <aspectj.version>1.8.13</aspectj.version>
    <guava.version>25.1-jre</guava.version>
    <lucene.bundle.version>7.4.0_1</lucene.bundle.version>
    <jsch.version>0.1.54</jsch.version>
    <guava16.version>16.0.1</guava16.version>
    <maven.flatten.file.name>pom-installed.xml</maven.flatten.file.name>
    <commons.dbcp.version>1.4</commons.dbcp.version>
    <bouncycastle.version>1.69</bouncycastle.version>
    <kafka.version>2.0.1</kafka.version>
    <distMgmtSnapshotsName>Apache Development Snapshot Repository</distMgmtSnapshotsName>
    <zstd.version>1.3.7-2</zstd.version>
    <easymock.version>3.4</easymock.version>
    <httpcore.version>4.4.14</httpcore.version>
    <guava14.version>14.0.1</guava14.version>
    <jboss.rmi.version>1.0.6.Final</jboss.rmi.version>
    <jetty.version>9.4.39.v20210325</jetty.version>
    <commons.beanutils.bundle.version>1.9.2_1</commons.beanutils.bundle.version>
    <arguments></arguments>
    <slf4j.version>1.7.33</slf4j.version>
    <commons.lang3.version>3.9</commons.lang3.version>
    <aopalliance.bundle.version>1.0_6</aopalliance.bundle.version>
    <commons.lang.version>2.6</commons.lang.version>
    <git.exec>git</git.exec>
    <distMgmtSnapshotsUrl>https://repository.apache.org/content/repositories/snapshots</distMgmtSnapshotsUrl>
    <jaxb.api.version>2.1</jaxb.api.version>
    <maven.compiler.source>1.8</maven.compiler.source>
    <mysql.connector.version>8.0.26</mysql.connector.version>
    <aspectj.bundle.version>1.8.13_1</aspectj.bundle.version>
    <yammer.metrics.core.version>2.2.0</yammer.metrics.core.version>
    <assembly.tarLongFileMode>posix</assembly.tarLongFileMode>
    <guava.retrying.version>2.0.0</guava.retrying.version>
    <commons.beanutils.version>1.9.4</commons.beanutils.version>
    <log4j.version>1.2.17</log4j.version>
    <zkclient.version>0.5</zkclient.version>
    <commons.codec.version>1.13</commons.codec.version>
    <jsonlib.bundle.version>2.4_1</jsonlib.bundle.version>
    <activemq.version>5.12.0</activemq.version>
    <paho.version>1.0.2</paho.version>
    <javassist.version>3.28.0-GA</javassist.version>
    <ignite.edition>apache-ignite</ignite.edition>
    <jackson.version>2.12.4</jackson.version>
    <spring.version>5.2.21.RELEASE</spring.version>
    <maven.flatten.plugin.version>1.2.7</maven.flatten.plugin.version>
    <failIfNoTests>false</failIfNoTests>
    <ezmorph.bundle.version>1.0.6_1</ezmorph.bundle.version>
    <docfx.exec>docfx</docfx.exec>
    <spark.version>2.3.0</spark.version>
    <jsonlib.version>2.4</jsonlib.version>
    <curator.version>5.2.0</curator.version>
    <asm.version>4.2</asm.version>
    <zookeeper.version>3.6.3</zookeeper.version>
    <revision>2.13.0</revision>
    <tomcat.version>9.0.10</tomcat.version>
    <jsch.bundle.version>0.1.54_1</jsch.bundle.version>
    <jms.spec.version>1.1.1</jms.spec.version>
  </properties>
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.12</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.javassist</groupId>
      <artifactId>javassist</artifactId>
      <version>${javassist.version}</version>
      <scope>test</scope>
    </dependency>
  </dependencies>
  <build>
    <pluginManagement>
      <plugins>
        <plugin>
          <artifactId>maven-checkstyle-plugin</artifactId>
          <version>${maven.checkstyle.plugin.version}</version>
          <dependencies>
            <dependency>
              <groupId>com.puppycrawl.tools</groupId>
              <artifactId>checkstyle</artifactId>
              <version>${checkstyle.puppycrawl.version}</version>
            </dependency>
            <dependency>
              <groupId>${project.groupId}</groupId>
              <artifactId>ignite-checkstyle</artifactId>
              <version>${ignite.version}</version>
            </dependency>
          </dependencies>
          <configuration>
            <skip>true</skip>
            <sourceDirectories>
              <sourceDirectory>${project.build.sourceDirectory}</sourceDirectory>
              <sourceDirectory>${project.build.testSourceDirectory}</sourceDirectory>
            </sourceDirectories>
            <consoleOutput>true</consoleOutput>
            <logViolationsToConsole>true</logViolationsToConsole>
            <failsOnError>true</failsOnError>
            <failOnViolation>true</failOnViolation>
            <outputFile>${project.build.directory}/checkstyle-result.xml</outputFile>
            <configLocation>checkstyle/checkstyle.xml</configLocation>
            <suppressionsLocation>checkstyle/checkstyle-suppressions.xml</suppressionsLocation>
            <includeTestSourceDirectory>true</includeTestSourceDirectory>
            <excludes>**/generated/**/*</excludes>
          </configuration>
        </plugin>
        <plugin>
          <groupId>net.alchim31.maven</groupId>
          <artifactId>scala-maven-plugin</artifactId>
          <version>3.3.2</version>
          <executions>
            <execution>
              <id>scala-compile-first</id>
              <phase>process-resources</phase>
              <goals>
                <goal>add-source</goal>
                <goal>compile</goal>
              </goals>
            </execution>
            <execution>
              <id>scala-test-compile</id>
              <phase>process-test-resources</phase>
              <goals>
                <goal>testCompile</goal>
              </goals>
            </execution>
          </executions>
          <configuration>
            <jvmArgs>
              <jvmArg>-Xms512m</jvmArg>
              <jvmArg>-Xmx1024m</jvmArg>
            </jvmArgs>
            <args>
              <arg>-nobootcp</arg>
            </args>
          </configuration>
        </plugin>
        <plugin>
          <artifactId>maven-jar-plugin</artifactId>
        </plugin>
        <plugin>
          <artifactId>maven-javadoc-plugin</artifactId>
          <version>${maven.javadoc.plugin.version}</version>
          <configuration>
            <taglets>
              <taglet>
                <tagletClass>org.apache.ignite.tools.javadoc.IgniteLinkTaglet</tagletClass>
                <tagletArtifact>
                  <groupId>${project.groupId}</groupId>
                  <artifactId>ignite-tools</artifactId>
                  <version>${ignite.version}</version>
                </tagletArtifact>
              </taglet>
            </taglets>
            <doctitle>Ignite ${ignite.version}</doctitle>
            <windowtitle>Ignite ${ignite.version}</windowtitle>
            <breakiterator>true</breakiterator>
            <verbose>true</verbose>
            <show>protected</show>
            <use>true</use>
            <author>false</author>
            <version>false</version>
            <additionalOptions>${javadoc.opts}</additionalOptions>
            <bottom>&lt;table width="100%" border="0" cellspacing=0 cellpadding=0 style="padding: 5px">
                                    &lt;tr>
                                        &lt;td>
                                            &lt;table style="padding-left: 0; margin: 0">
                                                &lt;tbody style="padding: 0; margin: 0">
                                                    &lt;tr style="padding: 0; margin: 0">
                                                        &lt;td>
                                                            &lt;a target=_blank href="https://ignite.apache.org">&lt;nobr>${current.year} Copyright &amp;#169; Apache Software Foundation&lt;/nobr>&lt;/a>
                                                        &lt;/td>
                                                    &lt;/tr>
                                                &lt;/tbody>
                                            &lt;/table>
                                        &lt;/td>
                                        &lt;td width="100%" align="right" valign="center">
                                            &lt;a href="https://twitter.com/ApacheIgnite" class="twitter-follow-button" data-show-count="false" data-size="large">Follow @ApacheIgnite&lt;/a>
                                        &lt;/td>
                                    &lt;/tr>
                                    &lt;tr>
                                        &lt;td colspan="2" valign="top" align="left">
                                            &lt;table style="padding-left: 0; margin: 0">
                                                &lt;tbody style="padding: 0; margin: 0">
                                                    &lt;tr style="padding: 0; margin: 0">
                                                        &lt;td>
                                                            &lt;b>Ignite Database and Caching Platform&lt;/b>
                                                        &lt;/td>
                                                        &lt;td>:&amp;nbsp;&amp;nbsp;
                                                            ver. &lt;strong>${project.version}&lt;/strong>
                                                        &lt;/td>
                                                    &lt;/tr>
                                                    &lt;tr style="padding: 0; margin: 0">
                                                        &lt;td>
                                                            &lt;b>Release Date&lt;/b>
                                                        &lt;/td>
                                                        &lt;td>:&amp;nbsp;&amp;nbsp;
                                                            ${maven.build.timestamp}
                                                        &lt;/td>
                                                    &lt;/tr>
                                                &lt;/tbody>
                                            &lt;/table>
                                        &lt;/td>
                                    &lt;/tr>
                                    &lt;/table></bottom>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.felix</groupId>
          <artifactId>maven-bundle-plugin</artifactId>
          <version>${maven.bundle.plugin.version}</version>
          <extensions>true</extensions>
          <executions>
            <execution>
              <id>bundle-manifest</id>
              <phase>process-classes</phase>
              <goals>
                <goal>manifest</goal>
              </goals>
            </execution>
          </executions>
          <configuration>
            <archive>
              <addMavenDescriptor>true</addMavenDescriptor>
            </archive>
            <supportedProjectTypes>
              <supportedProjectType>jar</supportedProjectType>
              <supportedProjectType>war</supportedProjectType>
            </supportedProjectTypes>
            <instructions>
              <Bundle-SymbolicName>${project.groupId}.${project.artifactId}</Bundle-SymbolicName>
              <Bundle-Version>${project.version}</Bundle-Version>
              <Bundle-Vendor>${project.organization.name}</Bundle-Vendor>
              <Bundle-Description>${project.description}</Bundle-Description>
              <Bundle-DocURL>${project.url}</Bundle-DocURL>
              <Import-Package>${osgi.import.package}</Import-Package>
              <Export-Package>${osgi.export.package}</Export-Package>
              <Private-Package>${osgi.private.package}</Private-Package>
              <Embed-Dependency>${osgi.embed.dependency}</Embed-Dependency>
              <Embed-Directory>lib</Embed-Directory>
              <Embed-Transitive>${osgi.embed.transitive}</Embed-Transitive>
              <_failok>${osgi.fail.ok}</_failok>
              <_invalidfilenames />
            </instructions>
          </configuration>
        </plugin>
        <plugin>
          <artifactId>maven-resources-plugin</artifactId>
          <version>3.2.0</version>
        </plugin>
        <plugin>
          <groupId>org.codehaus.mojo</groupId>
          <artifactId>build-helper-maven-plugin</artifactId>
          <version>3.0.0</version>
        </plugin>
        <plugin>
          <artifactId>maven-surefire-plugin</artifactId>
          <version>${surefire.version}</version>
          <dependencies>
            <dependency>
              <groupId>${project.groupId}</groupId>
              <artifactId>ignite-tools</artifactId>
              <version>${ignite.version}</version>
            </dependency>
          </dependencies>
        </plugin>
        <plugin>
          <artifactId>maven-antrun-plugin</artifactId>
          <version>1.8</version>
        </plugin>
        <plugin>
          <groupId>org.codehaus.mojo</groupId>
          <artifactId>exec-maven-plugin</artifactId>
          <version>1.3.2</version>
          <dependencies>
            <dependency>
              <groupId>${project.groupId}</groupId>
              <artifactId>ignite-tools</artifactId>
              <version>${ignite.version}</version>
            </dependency>
          </dependencies>
        </plugin>
        <plugin>
          <groupId>org.codehaus.mojo</groupId>
          <artifactId>flatten-maven-plugin</artifactId>
          <version>${maven.flatten.plugin.version}</version>
          <executions>
            <execution>
              <id>flatten</id>
              <phase>process-resources</phase>
              <goals>
                <goal>flatten</goal>
              </goals>
              <configuration>
                <flattenMode>oss</flattenMode>
                <flattenedPomFilename>${maven.flatten.file.name}</flattenedPomFilename>
              </configuration>
            </execution>
            <execution>
              <id>flatten.clean.before</id>
              <phase>clean</phase>
              <goals>
                <goal>clean</goal>
              </goals>
              <configuration>
                <flattenedPomFilename>${maven.flatten.file.name}</flattenedPomFilename>
              </configuration>
            </execution>
          </executions>
        </plugin>
      </plugins>
    </pluginManagement>
    <plugins>
      <plugin>
        <artifactId>maven-surefire-plugin</artifactId>
        <configuration>
          <forkCount>0</forkCount>
          <statelessTestsetInfoReporter implementation="org.apache.ignite.tools.surefire.TestSuiteAwareTestsetReporter" />
          <properties>
            <property>
              <name>listener</name>
              <value>org.apache.ignite.tools.junit.JUnitTeamcityReporter</value>
            </property>
          </properties>
          <includes>
            <include>**/*.java</include>
          </includes>
        </configuration>
      </plugin>
      <plugin>
        <artifactId>maven-source-plugin</artifactId>
        <version>2.2.1</version>
        <executions>
          <execution>
            <id>source</id>
            <phase>package</phase>
            <goals>
              <goal>jar-no-fork</goal>
            </goals>
            <configuration>
              <excludeResources>true</excludeResources>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>flatten-maven-plugin</artifactId>
        <executions>
          <execution>
            <id>flatten</id>
            <phase></phase>
            <inherited>false</inherited>
          </execution>
          <execution>
            <id>flatten-parent</id>
            <phase>process-resources</phase>
            <goals>
              <goal>flatten</goal>
            </goals>
            <inherited>false</inherited>
            <configuration>
              <updatePomFile>true</updatePomFile>
              <flattenMode>resolveCiFriendliesOnly</flattenMode>
              <flattenedPomFilename>${maven.flatten.file.name}</flattenedPomFilename>
              <pomElements>
                <properties>resolve</properties>
              </pomElements>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <artifactId>maven-enforcer-plugin</artifactId>
        <version>3.0.0-M2</version>
        <executions>
          <execution>
            <goals>
              <goal>enforce</goal>
            </goals>
          </execution>
        </executions>
        <configuration>
          <rules>
            <requireMavenVersion>
              <version>[3.5.0,)</version>
            </requireMavenVersion>
          </rules>
        </configuration>
      </plugin>
      <plugin>
        <artifactId>maven-dependency-plugin</artifactId>
        <executions>
          <execution>
            <id>copy-libs</id>
            <phase>test-compile</phase>
            <goals>
              <goal>copy-dependencies</goal>
            </goals>
            <configuration>
              <excludeGroupIds>${project.groupId}</excludeGroupIds>
              <outputDirectory>target/libs</outputDirectory>
              <includeScope>runtime</includeScope>
              <excludeTransitive>true</excludeTransitive>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <artifactId>maven-javadoc-plugin</artifactId>
        <executions>
          <execution>
            <id>module-javadoc</id>
            <phase>package</phase>
            <goals>
              <goal>jar</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>
  <profiles>
    <profile>
      <id>checkstyle</id>
      <build>
        <plugins>
          <plugin>
            <artifactId>maven-checkstyle-plugin</artifactId>
            <executions>
              <execution>
                <id>style</id>
                <phase>validate</phase>
                <goals>
                  <goal>check</goal>
                </goals>
              </execution>
            </executions>
            <configuration>
              <skip>false</skip>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>
    <profile>
      <id>check-licenses</id>
      <build>
        <plugins>
          <plugin>
            <groupId>org.apache.rat</groupId>
            <artifactId>apache-rat-plugin</artifactId>
            <version>0.12</version>
            <executions>
              <execution>
                <id>check-licenses</id>
                <phase>validate</phase>
                <goals>
                  <goal>check</goal>
                </goals>
                <configuration>
                  <excludes>
                    <exclude>work/**</exclude>
                    <exclude>**/target/**</exclude>
                    <exclude>**/*.log</exclude>
                    <exclude>**/*.m4</exclude>
                    <exclude>**/*.dylib</exclude>
                    <exclude>**/*.gar</exclude>
                    <exclude>**/licenses/*.txt</exclude>
                    <exclude>**/*readme*.txt</exclude>
                    <exclude>**/*.sql</exclude>
                    <exclude>**/*README*.txt</exclude>
                    <exclude>**/*README*.md</exclude>
                    <exclude>**/*CONTRIBUTING*.md</exclude>
                    <exclude>**/*DEVNOTES*.md</exclude>
                    <exclude>**/*index*.md</exclude>
                    <exclude>**/*.timestamp</exclude>
                    <exclude>**/*.iml</exclude>
                    <exclude>**/*.csv</exclude>
                    <exclude>**/*.jks</exclude>
                    <exclude>**/pom-installed.xml</exclude>
                    <exclude>**/keystore</exclude>
                    <exclude>**/keystore/*.jks</exclude>
                    <exclude>**/keystore/*.pem</exclude>
                    <exclude>**/keystore/*.pfx</exclude>
                    <exclude>**/keystore/ca/*.jks</exclude>
                    <exclude>**/keystore/ca/*.key</exclude>
                    <exclude>**/keystore/ca/*.txt</exclude>
                    <exclude>**/keystore/ca/*.txt.attr</exclude>
                    <exclude>**/keystore/ca/*serial</exclude>
                    <exclude>**/META-INF/services/**</exclude>
                    <exclude>**/id_rsa**</exclude>
                    <exclude>.travis.yml</exclude>
                    <exclude>.github/PULL_REQUEST_TEMPLATE.md</exclude>
                    <exclude>idea/ignite_codeStyle.xml</exclude>
                    <exclude>**/DEVNOTES*.txt</exclude>
                    <exclude>**/NOTICE*</exclude>
                    <exclude>**/LICENSE*</exclude>
                    <exclude>**/MIGRATION_GUIDE*</exclude>
                    <exclude>src/main/java/org/apache/ignite/internal/util/offheap/unsafe/GridOffHeapSnapTreeMap.java</exclude>
                    <exclude>src/main/java/org/apache/ignite/internal/util/nio/SelectedSelectionKeySet.java</exclude>
                    <exclude>src/main/java/org/apache/ignite/internal/util/snaptree/*.java</exclude>
                    <exclude>src/main/java/org/apache/ignite/internal/processors/query/calcite/sql/generated/*.java</exclude>
                    <exclude>src/main/java/org/jsr166/*.java</exclude>
                    <exclude>src/main/java/org/mindrot/*.java</exclude>
                    <exclude>src/test/java/org/apache/ignite/p2p/p2p.properties</exclude>
                    <exclude>src/test/resources/org.apache.ignite.util/*.output</exclude>
                    <exclude>src/test/resources/log/ignite.log.tst</exclude>
                    <exclude>src/test/java/org/apache/ignite/spi/deployment/uri/META-INF/ignite.incorrefs</exclude>
                    <exclude>src/test/java/org/apache/ignite/spi/deployment/uri/META-INF/ignite.empty</exclude>
                    <exclude>src/test/java/org/apache/ignite/spi/deployment/uri/META-INF/ignite.brokenxml</exclude>
                    <exclude>**/books/*.txt</exclude>
                    <exclude>src/main/java/org/apache/ignite/examples/streaming/wordcount/*.txt</exclude>
                    <exclude>examples/src/main/java/org/apache/ignite/examples/streaming/wordcount/*.txt</exclude>
                    <exclude>**/resources/datasets/**/*</exclude>
                    <exclude>**/resources/models/**/*</exclude>
                    <exclude>src/main/java/org/jetbrains/annotations/*.java</exclude>
                    <exclude>dev-tools/IGNITE-*.patch</exclude>
                    <exclude>dev-tools/.gradle/**/*</exclude>
                    <exclude>dev-tools/gradle/wrapper/**/*</exclude>
                    <exclude>dev-tools/gradlew</exclude>
                    <exclude>src/test/binaries/repo/org/apache/ignite/binary/test2/1.1/test2-1.1.pom</exclude>
                    <exclude>src/test/binaries/repo/org/apache/ignite/binary/test2/maven-metadata-local.xml</exclude>
                    <exclude>src/test/binaries/repo/org/apache/ignite/binary/test1/1.1/test1-1.1.pom</exclude>
                    <exclude>src/test/binaries/repo/org/apache/ignite/binary/test1/maven-metadata-local.xml</exclude>
                    <exclude>src/test/resources/org/apache/ignite/internal/managers/discovery/Wrapper.ser</exclude>
                    <exclude>src/test/binaries/repo/org/apache/ignite/binary/test1/1.1/test1-1.1.jar</exclude>
                    <exclude>src/test/binaries/repo/org/apache/ignite/binary/test2/1.1/test2-1.1.jar</exclude>
                    <exclude>**/*.cmake</exclude>
                    <exclude>**/CMakeLists.txt</exclude>
                    <exclude>**/CMakeSettings.json.in</exclude>
                    <exclude>**/cmake-build-*/</exclude>
                    <exclude>**/.idea/**</exclude>
                    <exclude>**/*.pc.in</exclude>
                    <exclude>**/*.sln</exclude>
                    <exclude>**/*.snk</exclude>
                    <exclude>**/*.slnrel</exclude>
                    <exclude>**/*.ini</exclude>
                    <exclude>**/*.DotSettings</exclude>
                    <exclude>**/*.FxCop</exclude>
                    <exclude>**/*.ruleset</exclude>
                    <exclude>**/*.csproj</exclude>
                    <exclude>**/*.ndproj</exclude>
                    <exclude>**/*.csprojrel</exclude>
                    <exclude>**/mkbuild.cmd</exclude>
                    <exclude>**/module.def</exclude>
                    <exclude>**/*.fxcop</exclude>
                    <exclude>**/*.ruleset</exclude>
                    <exclude>**/*.metaproj</exclude>
                    <exclude>**/*.metaproj.tmp</exclude>
                    <exclude>**/*.nunit</exclude>
                    <exclude>**/teamcity_boost.cpp</exclude>
                    <exclude>**/teamcity_messages.h</exclude>
                    <exclude>**/teamcity_messages.cpp</exclude>
                    <exclude>**/obj/x64/**</exclude>
                    <exclude>**/obj/x86/**</exclude>
                    <exclude>**/bin/x64/**</exclude>
                    <exclude>**/bin/x86/**</exclude>
                    <exclude>**/*.dxg</exclude>
                    <exclude>**/*.cmd</exclude>
                    <exclude>**/*.ps1</exclude>
                    <exclude>**/*.json</exclude>
                    <exclude>**/.dockerignore</exclude>
                    <exclude>modules/platforms/dotnet/Apache.Ignite.Core.Tests/Examples/ExpectedOutput/*.txt</exclude>
                    <exclude>packaging/**</exclude>
                    <exclude>src/test/sql/**</exclude>
                    <exclude>docs/_site/**</exclude>
                    <exclude>docs/assets/images/**</exclude>
                    <exclude>docs/Gemfile.lock</exclude>
                    <exclude>docs/.jekyll-cache/**</exclude>
                    <exclude>docs/_docs/images/**</exclude>
                    <exclude>docs/Gemfile</exclude>
                    <exclude>docs/assets/js/anchor.min.js</exclude>
                  </excludes>
                </configuration>
              </execution>
            </executions>
            <configuration>
              <addDefaultLicenseMatchers>true</addDefaultLicenseMatchers>
              <licenses>
                <license implementation="org.apache.rat.analysis.license.FullTextMatchingLicense">
                  <licenseFamilyCategory>IAL20</licenseFamilyCategory>
                  <licenseFamilyName>Ignite Apache License 2.0</licenseFamilyName>
                  <fullText>Licensed to the Apache Software Foundation (ASF) under one or more
                                        contributor license agreements.  See the NOTICE file distributed with
                                        this work for additional information regarding copyright ownership.
                                        The ASF licenses this file to You under the Apache License, Version 2.0
                                        (the "License"); you may not use this file except in compliance with
                                        the License.  You may obtain a copy of the License at

                                        http://www.apache.org/licenses/LICENSE-2.0

                                        Unless required by applicable law or agreed to in writing, software
                                        distributed under the License is distributed on an "AS IS" BASIS,
                                        WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
                                        See the License for the specific language governing permissions and
                                        limitations under the License.</fullText>
                </license>
              </licenses>
              <licenseFamilies>
                <licenseFamily implementation="org.apache.rat.license.SimpleLicenseFamily">
                  <familyName>Ignite Apache License 2.0</familyName>
                </licenseFamily>
              </licenseFamilies>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>
    <profile>
      <id>surefire-fork-count-1</id>
      <activation>
        <property>
          <name>FORK_COUNT_SET_TO_1</name>
        </property>
      </activation>
      <build>
        <plugins>
          <plugin>
            <artifactId>maven-surefire-plugin</artifactId>
            <configuration>
              <forkCount>1</forkCount>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>
    <profile>
      <id>java-9+</id>
      <activation>
        <jdk>[1.9,15)</jdk>
      </activation>
      <build>
        <plugins>
          <plugin>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.7.0</version>
            <configuration>
              <compilerArgs>
                <arg>--add-exports</arg>
                <arg>java.base/jdk.internal.misc=ALL-UNNAMED</arg>
                <arg>--add-exports</arg>
                <arg>java.base/sun.nio.ch=ALL-UNNAMED</arg>
                <arg>--add-exports</arg>
                <arg>java.management/com.sun.jmx.mbeanserver=ALL-UNNAMED</arg>
                <arg>--add-exports</arg>
                <arg>jdk.internal.jvmstat/sun.jvmstat.monitor=ALL-UNNAMED</arg>
              </compilerArgs>
            </configuration>
          </plugin>
          <plugin>
            <artifactId>maven-surefire-plugin</artifactId>
            <configuration>
              <argLine>--add-exports=java.base/jdk.internal.misc=ALL-UNNAMED --add-exports=java.base/sun.nio.ch=ALL-UNNAMED --add-exports=java.management/com.sun.jmx.mbeanserver=ALL-UNNAMED --add-exports=jdk.internal.jvmstat/sun.jvmstat.monitor=ALL-UNNAMED --add-exports=java.base/sun.reflect.generics.reflectiveObjects=ALL-UNNAMED --add-opens=jdk.management/com.sun.management.internal=ALL-UNNAMED --illegal-access=permit</argLine>
            </configuration>
          </plugin>
          <plugin>
            <artifactId>maven-javadoc-plugin</artifactId>
            <configuration>
              <additionalOptions>${javadoc.opts} --add-exports=java.base/sun.nio.ch=ALL-UNNAMED --add-exports=java.management/com.sun.jmx.mbeanserver=ALL-UNNAMED</additionalOptions>
              <detectJavaApiLink>false</detectJavaApiLink>
            </configuration>
          </plugin>
        </plugins>
      </build>
      <properties>
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>11</maven.compiler.target>
      </properties>
      <dependencyManagement>
        <dependencies>
          <dependency>
            <groupId>org.apache.hadoop</groupId>
            <artifactId>hadoop-common</artifactId>
            <exclusions>
              <exclusion>
                <artifactId>jdk.tools</artifactId>
                <groupId>jdk.tools</groupId>
              </exclusion>
            </exclusions>
          </dependency>
          <dependency>
            <groupId>org.apache.hadoop</groupId>
            <artifactId>hadoop-common</artifactId>
            <type>test-jar</type>
            <exclusions>
              <exclusion>
                <artifactId>jdk.tools</artifactId>
                <groupId>jdk.tools</groupId>
              </exclusion>
            </exclusions>
          </dependency>
        </dependencies>
      </dependencyManagement>
    </profile>
    <profile>
      <id>java-15+</id>
      <activation>
        <jdk>[15,)</jdk>
      </activation>
      <build>
        <plugins>
          <plugin>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.7.0</version>
            <configuration>
              <compilerArgs>
                <arg>--add-exports</arg>
                <arg>java.base/jdk.internal.misc=ALL-UNNAMED</arg>
                <arg>--add-exports</arg>
                <arg>java.base/sun.nio.ch=ALL-UNNAMED</arg>
                <arg>--add-exports</arg>
                <arg>java.management/com.sun.jmx.mbeanserver=ALL-UNNAMED</arg>
                <arg>--add-exports</arg>
                <arg>jdk.internal.jvmstat/sun.jvmstat.monitor=ALL-UNNAMED</arg>
                <arg>--add-exports</arg>
                <arg>java.base/java.io=ALL-UNNAMED</arg>
                <arg>--add-exports</arg>
                <arg>java.base/java.nio=ALL-UNNAMED</arg>
                <arg>--add-exports</arg>
                <arg>java.base/java.util=ALL-UNNAMED</arg>
                <arg>--add-exports</arg>
                <arg>java.base/java.lang=ALL-UNNAMED</arg>
              </compilerArgs>
            </configuration>
          </plugin>
          <plugin>
            <artifactId>maven-surefire-plugin</artifactId>
            <configuration>
              <argLine>--add-opens=java.base/jdk.internal.misc=ALL-UNNAMED
                                --add-opens=java.base/sun.nio.ch=ALL-UNNAMED
                                --add-opens=java.management/com.sun.jmx.mbeanserver=ALL-UNNAMED
                                --add-opens=jdk.internal.jvmstat/sun.jvmstat.monitor=ALL-UNNAMED
                                --add-opens=java.base/sun.reflect.generics.reflectiveObjects=ALL-UNNAMED
                                --add-opens=jdk.management/com.sun.management.internal=ALL-UNNAMED
                                --add-opens=java.base/java.io=ALL-UNNAMED
                                --add-opens=java.base/java.nio=ALL-UNNAMED
                                --add-opens=java.base/java.util=ALL-UNNAMED
                                --add-opens=java.base/java.lang=ALL-UNNAMED</argLine>
            </configuration>
          </plugin>
        </plugins>
      </build>
      <properties>
        <scala.library.version>2.12.15</scala.library.version>
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>15</maven.compiler.target>
      </properties>
    </profile>
    <profile>
      <id>tools.jar-default</id>
      <activation>
        <file>
          <exists>${java.home}/../lib/tools.jar</exists>
        </file>
      </activation>
      <dependencies>
        <dependency>
          <groupId>com.sun</groupId>
          <artifactId>tools</artifactId>
          <version>${java.version}</version>
          <scope>system</scope>
          <systemPath>${java.home}/../lib/tools.jar</systemPath>
        </dependency>
      </dependencies>
    </profile>
    <profile>
      <id>tools.jar-mac</id>
      <activation>
        <file>
          <exists>${java.home}/../Classes/classes.jar</exists>
        </file>
      </activation>
      <dependencies>
        <dependency>
          <groupId>com.sun</groupId>
          <artifactId>tools</artifactId>
          <version>${java.version}</version>
          <scope>system</scope>
          <systemPath>${java.home}/../Classes/classes.jar</systemPath>
        </dependency>
      </dependencies>
    </profile>
    <profile>
      <id>licenses</id>
      <build>
        <plugins>
          <plugin>
            <artifactId>maven-remote-resources-plugin</artifactId>
            <executions>
              <execution>
                <id>ignite-dependencies</id>
                <goals>
                  <goal>process</goal>
                </goals>
                <configuration>
                  <resourceBundles>
                    <resourceBundle>${project.groupId}:ignite-apache-license-gen:${project.version}</resourceBundle>
                  </resourceBundles>
                  <excludeTransitive>true</excludeTransitive>
                </configuration>
              </execution>
            </executions>
          </plugin>
          <plugin>
            <artifactId>maven-antrun-plugin</artifactId>
            <executions>
              <execution>
                <id>licenses-file-rename</id>
                <phase>compile</phase>
                <goals>
                  <goal>run</goal>
                </goals>
                <configuration>
                  <target>
                    <move file="${basedir}/target/classes/META-INF/licenses.txt" tofile="${basedir}/target/licenses/${project.artifactId}-licenses.txt" />
                  </target>
                  <failOnError>false</failOnError>
                </configuration>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
      <dependencies>
        <dependency>
          <groupId>${project.groupId}</groupId>
          <artifactId>ignite-apache-license-gen</artifactId>
          <version>${project.version}</version>
          <scope>test</scope>
        </dependency>
      </dependencies>
    </profile>
    <profile>
      <id>skip-docs</id>
      <properties>
        <maven.javadoc.skip>true</maven.javadoc.skip>
      </properties>
    </profile>
  </profiles>
</project>
