| <?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 |
| xmlns="http://maven.apache.org/POM/4.0.0" |
| xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" |
| xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> |
| <modelVersion>4.0.0</modelVersion> |
| |
| <parent> |
| <groupId>org.apache</groupId> |
| <artifactId>apache</artifactId> |
| <version>23</version> |
| <relativePath/> |
| </parent> |
| |
| <!-- |
| NOTE: |
| The ignite-parent module is used as a shared pom between the Ignite internal submodules and the Ignite Extensions. |
| This parent module will be released each time a new Ignite release occurs, so, if you're adding a new |
| maven profile, plugin or dependency only for Ignite submodule in this scm use the `parent-internal` |
| maven project instead. |
| Also, please, use the maven `$project` substitution variables in this pom.xml carefully (e.g. `${project.version}`) |
| since for in the Ignite Extension projects they may be inlined the different values. |
| --> |
| |
| <groupId>org.apache.ignite</groupId> |
| <artifactId>ignite-parent</artifactId> |
| <version>${revision}</version> |
| <packaging>pom</packaging> |
| |
| <properties> |
| <maven.compiler.source>1.8</maven.compiler.source> |
| <maven.compiler.target>1.8</maven.compiler.target> |
| |
| <revision>2.15.0-SNAPSHOT</revision> |
| <!-- Ignite version will be substituted with the flatten-maven-plugin and used as |
| a version dependency for Ignite extensions. --> |
| <ignite.version>${revision}</ignite.version> |
| <ignite.edition>apache-ignite</ignite.edition> |
| |
| <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> |
| <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> |
| <maven.build.timestamp.format>MMMM d yyyy</maven.build.timestamp.format> |
| <doxygen.exec>doxygen</doxygen.exec> |
| <docfx.exec>docfx</docfx.exec> |
| <git.exec>git</git.exec> |
| <javadoc.opts>-Xdoclint:none</javadoc.opts> |
| <update.notifier.enabled.by.default>true</update.notifier.enabled.by.default> |
| <failIfNoTests>false</failIfNoTests> |
| |
| <!-- Dependency versions --> |
| <activemq.version>5.12.0</activemq.version> |
| <aopalliance.bundle.version>1.0_6</aopalliance.bundle.version> |
| <asm.version>4.2</asm.version> |
| <aspectj.bundle.version>1.8.13_1</aspectj.bundle.version> |
| <aspectj.version>1.8.13</aspectj.version> |
| <netty.version>4.1.79.Final</netty.version> |
| <bouncycastle.version>1.69</bouncycastle.version> |
| <commons.beanutils.bundle.version>1.9.2_1</commons.beanutils.bundle.version> |
| <commons.beanutils.version>1.9.4</commons.beanutils.version> |
| <commons.codec.version>1.15</commons.codec.version> |
| <commons.collections.version>3.2.2</commons.collections.version> |
| <commons.lang.version>2.6</commons.lang.version> |
| <commons.io.version>2.11.0</commons.io.version> |
| <commons.dbcp.version>1.4</commons.dbcp.version> |
| <cron4j.version>2.2.5</cron4j.version> |
| <curator.version>5.2.0</curator.version> |
| <easymock.version>3.4</easymock.version> |
| <ezmorph.bundle.version>1.0.6_1</ezmorph.bundle.version> |
| <ezmorph.version>1.0.6</ezmorph.version> |
| <guava.retrying.version>2.0.0</guava.retrying.version> |
| <guava.version>25.1-jre</guava.version> |
| <guava14.version>14.0.1</guava14.version> |
| <guava16.version>16.0.1</guava16.version> |
| <h2.version>1.4.197</h2.version> |
| <hadoop.version>2.9.1</hadoop.version> |
| <hamcrest.version>2.2</hamcrest.version> |
| <httpclient.version>4.5.13</httpclient.version> |
| <httpcore.version>4.4.14</httpcore.version> |
| <jackson.version>2.12.7</jackson.version> |
| <jaxb.api.version>2.1</jaxb.api.version> |
| <jaxb.impl.version>2.1.14</jaxb.impl.version> |
| <javassist.version>3.28.0-GA</javassist.version> |
| <javax.cache.bundle.version>1.0.0_1</javax.cache.bundle.version> |
| <javax.cache.tck.version>1.1.0</javax.cache.tck.version> |
| <javax.cache.version>1.0.0</javax.cache.version> |
| <jboss.rmi.version>1.0.6.Final</jboss.rmi.version> |
| <jetbrains.annotations.version>16.0.3</jetbrains.annotations.version> |
| <jetty.version>9.4.49.v20220914</jetty.version> |
| <jmh.version>1.13</jmh.version> |
| <jms.spec.version>1.1.1</jms.spec.version> |
| <jna.version>4.5.2</jna.version> |
| <jnr.posix.version>3.1.15</jnr.posix.version> |
| <jotm.version>2.3.1-M1</jotm.version> |
| <jsch.bundle.version>0.1.54_1</jsch.bundle.version> |
| <jsch.version>0.1.54</jsch.version> |
| <jsonlib.bundle.version>2.4_1</jsonlib.bundle.version> |
| <jsonlib.version>2.4</jsonlib.version> |
| <jtidy.version>r938</jtidy.version> |
| <kafka.version>2.0.1</kafka.version> |
| <log4j2.version>2.18.0</log4j2.version> |
| <lucene.bundle.version>7.4.0_1</lucene.bundle.version> |
| <lucene.version>8.11.2</lucene.version> |
| <lz4.version>1.8.0</lz4.version> |
| <maven.bundle.plugin.version>3.5.0</maven.bundle.plugin.version> |
| <maven.checkstyle.plugin.version>3.1.1</maven.checkstyle.plugin.version> |
| <maven.flatten.plugin.version>1.2.7</maven.flatten.plugin.version> |
| <maven.flatten.file.name>pom-installed.xml</maven.flatten.file.name> |
| <maven.model.version>3.8.4</maven.model.version> |
| <checkstyle.puppycrawl.version>8.45</checkstyle.puppycrawl.version> |
| <mockito.version>3.4.6</mockito.version> |
| <mysql.connector.version>8.0.30</mysql.connector.version> |
| <netlibjava.version>1.1.2</netlibjava.version> |
| <oro.bundle.version>2.0.8_6</oro.bundle.version> |
| <paho.version>1.0.2</paho.version> |
| <postgres.connector.version>42.3.3</postgres.connector.version> |
| <scala210.jline.version>2.10.7</scala210.jline.version> |
| <scala210.library.version>2.10.7</scala210.library.version> |
| <scala.library.version>2.11.12</scala.library.version> |
| <scala.test.version>2.2.6</scala.test.version> |
| <slf4j.version>1.7.33</slf4j.version> |
| <slf4j16.version>1.6.4</slf4j16.version> |
| <snappy.version>1.1.7.2</snappy.version> |
| <spring.version>5.2.22.RELEASE</spring.version> |
| <storm.version>1.1.1</storm.version> |
| <surefire.version>3.0.0-M4</surefire.version> |
| <tomcat.version>9.0.63</tomcat.version> |
| <twitter.hbc.version>2.2.0</twitter.hbc.version> |
| <yammer.metrics.annotation.version>2.2.0</yammer.metrics.annotation.version> |
| <yammer.metrics.core.version>2.2.0</yammer.metrics.core.version> |
| <yardstick.version>0.8.3</yardstick.version> |
| <zkclient.version>0.5</zkclient.version> |
| <zookeeper.version>3.6.3</zookeeper.version> |
| <zstd.version>1.3.7-2</zstd.version> |
| <opencensus.version>0.22.0</opencensus.version> |
| <commons.lang3.version>3.9</commons.lang3.version> |
| <ignite-kafka-ext.version>1.0.0</ignite-kafka-ext.version> |
| |
| <!-- Maven plugins versions --> |
| <maven.javadoc.plugin.version>3.2.0</maven.javadoc.plugin.version> |
| |
| <!-- OSGI Manifest generation default property values --> |
| <osgi.import.package>*</osgi.import.package> |
| <osgi.export.package>{local-packages}</osgi.export.package> |
| |
| <flattenMode>clean</flattenMode> |
| |
| <ignite.platform.full.version> |
| ${ignite.majorVersion}.${ignite.minorVersion}.${ignite.incrementalVersion}.${ignite.buildNumber} |
| </ignite.platform.full.version> |
| </properties> |
| |
| <url>https://ignite.apache.org</url> |
| |
| <description>Apache Ignite® is a Distributed Database For High-Performance Computing With In-Memory Speed.</description> |
| |
| <scm> |
| <url>https://gitbox.apache.org/repos/asf/ignite.git</url> |
| <connection>scm:git:https://gitbox.apache.org/repos/asf/ignite.git</connection> |
| <developerConnection>scm:git:https://gitbox.apache.org/repos/asf/ignite.git</developerConnection> |
| <tag>HEAD</tag> |
| </scm> |
| |
| <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> |
| |
| <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> |
| |
| <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> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-checkstyle-plugin</artifactId> |
| <version>${maven.checkstyle.plugin.version}</version> |
| <configuration> |
| <skip>true</skip> |
| <!-- The source directories tag below is used to dynamically add the sources in case |
| additional build profiles are activated (combine.children="append" is used). --> |
| <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> |
| <!-- This configuration checkstyle files will be obtained from the 'ignite-checkstyle' resources. --> |
| <configLocation>checkstyle/checkstyle.xml</configLocation> |
| <suppressionsLocation>checkstyle/checkstyle-suppressions.xml</suppressionsLocation> |
| <includeTestSourceDirectory>true</includeTestSourceDirectory> |
| <excludes>**/generated/**/*</excludes> |
| </configuration> |
| <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> |
| </plugin> |
| |
| <plugin> |
| <groupId>net.alchim31.maven</groupId> |
| <artifactId>scala-maven-plugin</artifactId> |
| <version>3.3.2</version> |
| <configuration> |
| <jvmArgs> |
| <jvmArg>-Xms512m</jvmArg> |
| <jvmArg>-Xmx1024m</jvmArg> |
| </jvmArgs> |
| <args> |
| <arg>-nobootcp</arg> |
| </args> |
| </configuration> |
| <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> |
| </plugin> |
| |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-jar-plugin</artifactId> |
| </plugin> |
| |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <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> |
| <![CDATA[ |
| <table width="100%" border="0" cellspacing=0 cellpadding=0 style="padding: 5px"> |
| <tr> |
| <td> |
| <table style="padding-left: 0; margin: 0"> |
| <tbody style="padding: 0; margin: 0"> |
| <tr style="padding: 0; margin: 0"> |
| <td> |
| <a target=_blank href="https://ignite.apache.org"><nobr>${current.year} Copyright © Apache Software Foundation</nobr></a> |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| </td> |
| <td width="100%" align="right" valign="center"> |
| <a href="https://twitter.com/ApacheIgnite" class="twitter-follow-button" data-show-count="false" data-size="large">Follow @ApacheIgnite</a> |
| </td> |
| </tr> |
| <tr> |
| <td colspan="2" valign="top" align="left"> |
| <table style="padding-left: 0; margin: 0"> |
| <tbody style="padding: 0; margin: 0"> |
| <tr style="padding: 0; margin: 0"> |
| <td> |
| <b>Ignite Database and Caching Platform</b> |
| </td> |
| <td>: |
| ver. <strong>${project.version}</strong> |
| </td> |
| </tr> |
| <tr style="padding: 0; margin: 0"> |
| <td> |
| <b>Release Date</b> |
| </td> |
| <td>: |
| ${maven.build.timestamp} |
| </td> |
| </tr> |
| </tbody> |
| </table> |
| </td> |
| </tr> |
| </table> |
| ]]> |
| </bottom> |
| </configuration> |
| </plugin> |
| |
| <plugin> |
| <groupId>org.apache.felix</groupId> |
| <artifactId>maven-bundle-plugin</artifactId> |
| <version>${maven.bundle.plugin.version}</version> |
| <extensions>true</extensions> |
| <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>false</Embed-Dependency> |
| <Embed-Directory>lib</Embed-Directory> |
| <Embed-Transitive>false</Embed-Transitive> |
| <_failok>false</_failok> |
| <_invalidfilenames/> |
| </instructions> |
| </configuration> |
| <executions> |
| <execution> |
| <id>bundle-manifest</id> |
| <phase>process-classes</phase> |
| <goals> |
| <goal>manifest</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <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> |
| <groupId>org.apache.maven.plugins</groupId> |
| <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> |
| <groupId>org.apache.maven.plugins</groupId> |
| <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> |
| <configuration> |
| <flattenMode>oss</flattenMode> |
| <flattenedPomFilename>${maven.flatten.file.name}</flattenedPomFilename> |
| </configuration> |
| <phase>process-resources</phase> |
| <goals> |
| <goal>flatten</goal> |
| </goals> |
| </execution> |
| |
| <!-- ensure proper cleanup before start --> |
| <execution> |
| <id>flatten.clean.before</id> |
| <configuration> |
| <flattenedPomFilename>${maven.flatten.file.name}</flattenedPomFilename> |
| </configuration> |
| <phase>clean</phase> |
| <goals> |
| <goal>clean</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </pluginManagement> |
| |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <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> |
| <!-- Check all classes that may have any test. --> |
| <include>**/*.java</include> |
| </includes> |
| </configuration> |
| </plugin> |
| |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-source-plugin</artifactId> |
| <version>2.2.1</version> |
| <executions> |
| <execution> |
| <id>source</id> |
| <goals> |
| <goal>jar-no-fork</goal> |
| </goals> |
| <phase>package</phase> |
| <configuration> |
| <excludeResources>true</excludeResources> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| |
| <plugin> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>flatten-maven-plugin</artifactId> |
| |
| <executions> |
| <!-- disable flattering for parent pom. --> |
| <execution> |
| <id>flatten</id> |
| <inherited>false</inherited> |
| <phase/> |
| </execution> |
| |
| <execution> |
| <id>flatten-parent</id> |
| <inherited>false</inherited> |
| <configuration> |
| <updatePomFile>true</updatePomFile> |
| <flattenMode>resolveCiFriendliesOnly</flattenMode> |
| <flattenedPomFilename>${maven.flatten.file.name}</flattenedPomFilename> |
| <pomElements> |
| <properties>resolve</properties> |
| </pomElements> |
| </configuration> |
| <phase>process-resources</phase> |
| <goals> |
| <goal>flatten</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-enforcer-plugin</artifactId> |
| <version>3.0.0-M2</version> |
| <configuration> |
| <rules> |
| <requireMavenVersion> |
| <version>[3.5.0,)</version> |
| </requireMavenVersion> |
| </rules> |
| </configuration> |
| <executions> |
| <execution> |
| <goals> |
| <goal>enforce</goal> |
| </goals> |
| </execution> |
| </executions> |
| </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> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-javadoc-plugin</artifactId> |
| <executions> |
| <execution> |
| <id>module-javadoc</id> |
| <goals> |
| <goal>jar</goal> |
| </goals> |
| <phase>package</phase> |
| </execution> |
| </executions> |
| </plugin> |
| |
| <!-- Thin clients have the own versions format. We need to prepare required properties.--> |
| <plugin> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>build-helper-maven-plugin</artifactId> |
| <executions> |
| <execution> |
| <!-- |
| This will create the following properties: |
| ignite.majorVersion, ignite.minorVersion, ignite.incrementalVersion |
| --> |
| <id>parse-version</id> |
| <goals> |
| <goal>parse-version</goal> |
| </goals> |
| <phase>validate</phase> |
| <configuration> |
| <propertyPrefix>ignite</propertyPrefix> |
| </configuration> |
| </execution> |
| <execution> |
| <id>thin-timestamp-property</id> |
| <goals> |
| <goal>timestamp-property</goal> |
| </goals> |
| <phase>validate</phase> |
| <configuration> |
| <name>ignite.buildNumber</name> |
| <!-- See: https://docs.oracle.com/javase/8/docs/api/java/text/SimpleDateFormat.html --> |
| <pattern>yywwu</pattern> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| |
| <!-- Generate the OSGi MANIFEST.MF for this bundle. --> |
| <plugin> |
| <groupId>org.apache.felix</groupId> |
| <artifactId>maven-bundle-plugin</artifactId> |
| </plugin> |
| </plugins> |
| </build> |
| |
| <profiles> |
| <profile> |
| <id>checkstyle</id> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-checkstyle-plugin</artifactId> |
| <configuration> |
| <skip>false</skip> |
| </configuration> |
| <executions> |
| <execution> |
| <id>style</id> |
| <goals> |
| <goal>check</goal> |
| </goals> |
| <phase>validate</phase> |
| </execution> |
| </executions> |
| </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> |
| <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> |
| <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><!--Free Software Foundation notice--> |
| <exclude>**/*.dylib</exclude><!--bin-files--> |
| <exclude>**/*.gar</exclude><!--bin-files--> |
| <exclude>**/licenses/*.txt</exclude><!--files of licenses--> |
| <exclude>**/*readme*.txt</exclude><!--readme files--> |
| <exclude>**/*.sql</exclude><!--sql files--> |
| <exclude>**/*README*.txt</exclude><!--readme files--> |
| <exclude>**/*README*.md</exclude><!--readme files--> |
| <exclude>**/*CONTRIBUTING*.md</exclude><!--readme files--> |
| <exclude>**/*DEVNOTES*.md</exclude><!--readme files--> |
| <exclude>**/*index*.md</exclude><!--readme files--> |
| <exclude>**/*.timestamp</exclude><!--tmp-files--> |
| <exclude>**/*.iml</exclude><!--IDEA files--> |
| <exclude>**/*.csv</exclude><!--CSV files--> |
| <exclude>**/*.jks</exclude><!--bin-files--> |
| <exclude>**/pom-installed.xml</exclude><!--tmp-files--> |
| <exclude>**/keystore</exclude><!--bin-files--> |
| <exclude>**/keystore/*.jks</exclude><!--bin-files--> |
| <exclude>**/keystore/*.pem</exclude><!--auto generated files--> |
| <exclude>**/keystore/*.pfx</exclude><!--bin-files--> |
| <exclude>**/keystore/ca/*.jks</exclude><!--bin-files--> |
| <exclude>**/keystore/ca/*.key</exclude><!--bin-files--> |
| <exclude>**/keystore/ca/*.txt</exclude><!--auto generated files--> |
| <exclude>**/keystore/ca/*.txt.attr</exclude><!--auto generated files--> |
| <exclude>**/keystore/ca/*serial</exclude><!--auto generated files--> |
| <exclude>**/META-INF/services/**</exclude> <!-- Interface mappings: cannot be changed --> |
| <exclude>**/id_rsa**</exclude> <!--SSH--> |
| <!--special excludes--> |
| <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><!--BSD license--> |
| <exclude>src/main/java/org/apache/ignite/internal/util/nio/SelectedSelectionKeySet.java</exclude><!-- Apache 2.0 license --> |
| <exclude>src/main/java/org/apache/ignite/internal/util/snaptree/*.java</exclude><!--BSD license--> |
| <exclude>src/main/java/org/apache/ignite/internal/processors/query/calcite/sql/generated/*.java</exclude><!--auto generated files--> |
| <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><!--test depends on file content--> |
| <exclude>src/test/resources/org.apache.ignite.util/*.output</exclude><!--test depends on file content--> |
| <exclude>src/test/resources/log/ignite.log.tst</exclude><!--test resource--> |
| <exclude>src/test/java/org/apache/ignite/spi/deployment/uri/META-INF/ignite.incorrefs</exclude><!--test resource--> |
| <exclude>src/test/java/org/apache/ignite/spi/deployment/uri/META-INF/ignite.empty</exclude><!--should be empty--> |
| <exclude>src/test/java/org/apache/ignite/spi/deployment/uri/META-INF/ignite.brokenxml</exclude><!--test resource--> |
| <exclude>**/books/*.txt</exclude><!--books examples--> |
| <exclude>src/main/java/org/apache/ignite/examples/streaming/wordcount/*.txt</exclude><!--books examples--> |
| <exclude>examples/src/main/java/org/apache/ignite/examples/streaming/wordcount/*.txt</exclude><!--books examples--> |
| <exclude>**/resources/datasets/**/*</exclude><!--Datasets in ml module--> |
| <exclude>**/resources/models/**/*</exclude><!--Pre-trained ml models--> |
| <exclude>src/main/java/org/jetbrains/annotations/*.java</exclude><!--copyright--> |
| <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> |
| <!--platforms--> |
| <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> |
| <!--Packaging --> |
| <exclude>packaging/**</exclude> |
| <!-- Calcite test scripts --> |
| <exclude>src/test/sql/**</exclude> |
| <!-- Ignite Documentation--> |
| <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><!-- Distributed under the MIT license. The original license header is badly formatted. --> |
| </excludes> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </build> |
| </profile> |
| |
| <profile> |
| <id>surefire-fork-count-1</id> |
| <activation> |
| <property> |
| <!-- To activate this profile set the following property. --> |
| <name>FORK_COUNT_SET_TO_1</name> |
| </property> |
| </activation> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <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> |
| <properties> |
| <maven.compiler.source>1.8</maven.compiler.source> |
| <maven.compiler.target>11</maven.compiler.target> |
| </properties> |
| <dependencies/> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <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> |
| <groupId>org.apache.maven.plugins</groupId> |
| <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> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-javadoc-plugin</artifactId> |
| <configuration> |
| <!-- TODO https://issues.apache.org/jira/browse/IGNITE-13202 --> |
| <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> |
| |
| <dependencyManagement> |
| <dependencies> |
| <dependency> |
| <groupId>org.apache.hadoop</groupId> |
| <artifactId>hadoop-common</artifactId> |
| <exclusions> |
| <exclusion> |
| <!-- This dependency is not available with java 9.--> |
| <groupId>jdk.tools</groupId> |
| <artifactId>jdk.tools</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| <dependency> |
| <groupId>org.apache.hadoop</groupId> |
| <artifactId>hadoop-common</artifactId> |
| <type>test-jar</type> |
| <exclusions> |
| <exclusion> |
| <!-- This dependency is not available with java 9.--> |
| <groupId>jdk.tools</groupId> |
| <artifactId>jdk.tools</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| </dependencies> |
| </dependencyManagement> |
| |
| </profile> |
| |
| <profile> |
| <id>java-15+</id> |
| <activation> |
| <jdk>[15,)</jdk> |
| </activation> |
| <properties> |
| <maven.compiler.source>1.8</maven.compiler.source> |
| <maven.compiler.target>15</maven.compiler.target> |
| <scala.library.version>2.12.15</scala.library.version> |
| </properties> |
| <dependencies/> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <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> |
| <arg>--add-exports</arg> |
| <arg>java.base/java.lang.invoke=ALL-UNNAMED</arg> |
| <arg>--add-exports</arg> |
| <arg>java.sql/java.sql=ALL-UNNAMED</arg> |
| </compilerArgs> |
| </configuration> |
| </plugin> |
| |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <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.util.concurrent=ALL-UNNAMED |
| --add-opens=java.base/java.util.concurrent.locks=ALL-UNNAMED |
| --add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED |
| --add-opens=java.base/java.lang=ALL-UNNAMED |
| --add-opens=java.base/java.lang.invoke=ALL-UNNAMED |
| --add-opens=java.base/java.math=ALL-UNNAMED |
| --add-opens=java.sql/java.sql=ALL-UNNAMED |
| </argLine> |
| </configuration> |
| </plugin> |
| </plugins> |
| </build> |
| </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> |
| <scope>system</scope> |
| <version>${java.version}</version> |
| <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> |
| <scope>system</scope> |
| <version>${java.version}</version> |
| <systemPath>${java.home}/../Classes/classes.jar</systemPath> |
| </dependency> |
| </dependencies> |
| </profile> |
| |
| <profile> |
| <id>licenses</id> |
| |
| <dependencies> |
| <dependency> |
| <groupId>org.apache.ignite</groupId> |
| <artifactId>ignite-apache-license-gen</artifactId> |
| <version>1.4.0</version> |
| </dependency> |
| </dependencies> |
| |
| <build> |
| <plugins> |
| <plugin><!-- generates dependencies licenses --> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-remote-resources-plugin</artifactId> |
| <executions> |
| <execution> |
| <id>ignite-dependencies</id> |
| <goals> |
| <goal>process</goal> |
| </goals> |
| <configuration> |
| <resourceBundles> |
| <resourceBundle>org.apache.ignite:ignite-apache-license-gen:1.4.0</resourceBundle> |
| </resourceBundles> |
| <excludeTransitive>true</excludeTransitive> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-antrun-plugin</artifactId> |
| <executions> |
| <execution> |
| <id>licenses-file-rename</id> |
| <goals> |
| <goal>run</goal> |
| </goals> |
| <phase>compile</phase> |
| <configuration> |
| <target> |
| <!-- moving licenses generated by "ignite-dependencies" --> |
| <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> |
| </profile> |
| <profile> |
| <id>skip-docs</id> |
| <properties> |
| <maven.javadoc.skip>true</maven.javadoc.skip> |
| </properties> |
| </profile> |
| </profiles> |
| </project> |