| <?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>17</maven.compiler.source> |
| <maven.compiler.target>17</maven.compiler.target> |
| |
| <revision>2.19.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 --> |
| <commons.codec.version>1.20.0</commons.codec.version> |
| <commons.collections.version>3.2.2</commons.collections.version> |
| <commons.io.version>2.21.0</commons.io.version> |
| <commons.dbcp.version>1.4</commons.dbcp.version> |
| <cron4j.version>2.2.5</cron4j.version> |
| <curator.version>5.9.0</curator.version> |
| <guava.version>33.5.0-jre</guava.version> |
| <failureaccess.version>1.0.1</failureaccess.version> |
| <grpc-context.version>1.81.0</grpc-context.version> |
| <h2.version>1.4.197</h2.version> |
| <hamcrest.version>2.2</hamcrest.version> |
| <jackson.version>2.21.3</jackson.version> |
| <jackson-annotations.version>2.21</jackson-annotations.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.1</javax.cache.tck.version> |
| <javax.cache.version>1.0.0</javax.cache.version> |
| <jboss.logging.version>3.6.3.Final</jboss.logging.version> |
| <jetbrains.annotations.version>26.1.0</jetbrains.annotations.version> |
| <jetty.version>12.1.10</jetty.version> |
| <jetty-jakarta-servlet-api.version>6.1.0</jetty-jakarta-servlet-api.version> |
| <jmh.version>1.37</jmh.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> |
| <jtidy.version>1.0.5</jtidy.version> |
| <log4j2.version>2.25.4</log4j2.version> |
| <lucene.bundle.version>7.4.0_1</lucene.bundle.version> |
| <lucene.version>8.11.4</lucene.version> |
| <lz4.version>1.10.1</lz4.version> |
| <maven.bundle.plugin.version>5.1.9</maven.bundle.plugin.version> |
| <maven.checkstyle.plugin.version>3.6.0</maven.checkstyle.plugin.version> |
| <maven.flatten.plugin.version>1.7.3</maven.flatten.plugin.version> |
| <maven.flatten.file.name>pom-installed.xml</maven.flatten.file.name> |
| <maven.model.version>3.8.9</maven.model.version> |
| <checkstyle.puppycrawl.version>12.3.1</checkstyle.puppycrawl.version> |
| <mockito.version>5.21.0</mockito.version> |
| <mysql.connector.version>8.0.30</mysql.connector.version> |
| <postgres.connector.version>42.7.3</postgres.connector.version> |
| <slf4j.version>2.0.17</slf4j.version> |
| <snappy.version>1.1.10.8</snappy.version> |
| <spring.version>6.2.19</spring.version> |
| <surefire.version>3.5.6</surefire.version> |
| <tomcat.version>10.0.27</tomcat.version> |
| <yardstick.version>0.8.3</yardstick.version> |
| <zookeeper.version>3.9.5</zookeeper.version> |
| <zstd.version>1.5.7-8</zstd.version> |
| <opencensus.version>0.31.1</opencensus.version> |
| <commons.lang3.version>3.20.0</commons.lang3.version> |
| <ignite-kafka-ext.version>1.0.0</ignite-kafka-ext.version> |
| <xstream.version>1.4.17</xstream.version> |
| <narayana.version>7.3.4.Final</narayana.version> |
| |
| <!-- Maven plugins versions --> |
| <maven.javadoc.plugin.version>3.12.0</maven.javadoc.plugin.version> |
| <maven.enforcer.plugin.version>3.6.2</maven.enforcer.plugin.version> |
| <maven.compiler.plugin.version>3.15.0</maven.compiler.plugin.version> |
| <maven.surefire.plugin.version>3.5.4</maven.surefire.plugin.version> |
| <maven.failsafe.plugin.version>3.5.4</maven.failsafe.plugin.version> |
| <maven.shade.plugin.version>3.6.1</maven.shade.plugin.version> |
| <maven.clean.plugin.version>3.5.0</maven.clean.plugin.version> |
| <maven.deploy.plugin.version>3.1.4</maven.deploy.plugin.version> |
| <maven.install.plugin.version>3.1.4</maven.install.plugin.version> |
| <maven.jar.plugin.version>3.5.0</maven.jar.plugin.version> |
| <maven.resources.plugin.version>3.4.0</maven.resources.plugin.version> |
| <maven.site.plugin.version>3.21.0</maven.site.plugin.version> |
| <maven.source.plugin.version>3.4.0</maven.source.plugin.version> |
| <maven.assembly.plugin.version>3.8.0</maven.assembly.plugin.version> |
| <maven.dependency.plugin.version>3.9.0</maven.dependency.plugin.version> |
| <maven.jarsigner.plugin.version>3.1.0</maven.jarsigner.plugin.version> |
| <build.helper.maven.plugin.version>3.6.1</build.helper.maven.plugin.version> |
| <cmake.maven.plugin.version>3.31.5-b1</cmake.maven.plugin.version> |
| |
| <sonar.organization>apache</sonar.organization> |
| <sonar.host.url>https://sonarcloud.io</sonar.host.url> |
| <sonar.exclusions>**/generated/**/*</sonar.exclusions> |
| |
| <!-- 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> |
| |
| <dependencyManagement> |
| <dependencies> |
| <dependency> |
| <groupId>com.google.guava</groupId> |
| <artifactId>guava</artifactId> |
| <version>${guava.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>com.google.guava</groupId> |
| <artifactId>failureaccess</artifactId> |
| <version>${failureaccess.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-api</artifactId> |
| <version>${slf4j.version}</version> |
| </dependency> |
| </dependencies> |
| </dependencyManagement> |
| |
| <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> |
| <suppressionsFileExpression>checkstyle.suppressions.file</suppressionsFileExpression> |
| <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>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} --add-exports=java.base/sun.nio.ch=ALL-UNNAMED --add-exports=java.management/com.sun.jmx.mbeanserver=ALL-UNNAMED</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> |
| <groups> |
| <group> |
| <title>Common Grid APIs</title> |
| <packages>org.apache.ignite:org.apache.ignite.cluster:org.apache.ignite.lifecycle:org.apache.ignite.configuration:org.apache.ignite.lang:org.apache.ignite.resources:org.apache.ignite.thread:org.apache.ignite.scheduler:org.apache.ignite.events:org.apache.ignite.messaging:org.apache.ignite.startup*:org.apache.ignite.mem:org.apache.ignite.topology</packages> |
| </group> |
| <group> |
| <title>Data Grid APIs</title> |
| <packages>org.apache.ignite.cache*:org.apache.ignite.transactions:org.apache.ignite.compute*:org.apache.ignite.services:org.apache.ignite.datastructures:org.apache.ignite.dataload:org.apache.ignite.streamer*:org.apache.ignite.stream*</packages> |
| </group> |
| <group> |
| <title>Thin Client APIs</title> |
| <packages>org.apache.ignite.client:org.apache.ignite.client.events</packages> |
| </group> |
| <group> |
| <title>Binary Objects API</title> |
| <packages>org.apache.ignite.binary*</packages> |
| </group> |
| <group> |
| <title>SQL engines</title> |
| <packages>org.apache.ignite.calcite:org.apache.ignite.indexing</packages> |
| </group> |
| <group> |
| <title>Security APIs</title> |
| <packages>org.apache.ignite.plugin.security:org.apache.ignite.ssl:org.apache.ignite.spi.encryption*</packages> |
| </group> |
| <group> |
| <title>Maintenance and Monitoring APIs</title> |
| <packages>org.apache.ignite.maintenance:org.apache.ignite.mbean:org.apache.ignite.mxbean:org.apache.ignite.failure:org.apache.ignite.plugin.segmentation:org.apache.ignite.logger*:org.apache.ignite.metric:org.apache.ignite.spi.systemview*</packages> |
| </group> |
| <group> |
| <title>Kubernetes Integration</title> |
| <packages>org.apache.ignite.kubernetes*</packages> |
| </group> |
| <group> |
| <title>Platforms</title> |
| <packages>org.apache.ignite.platform*:org.apache.ignite.marshaller*</packages> |
| </group> |
| <group> |
| <title>Availability APIs</title> |
| <packages>org.apache.ignite.cdc:org.apache.ignite.dump</packages> |
| </group> |
| <group> |
| <title>Plugins APIs</title> |
| <packages>org.apache.ignite.plugin*:org.apache.ignite.visor.plugin</packages> |
| </group> |
| <group> |
| <title>SPI APIs</title> |
| <packages>org.apache.ignite.spi:org.apache.ignite.spi.checkpoint*:org.apache.ignite.spi.collision*:org.apache.ignite.spi.indexing*:org.apache.ignite.spi.loadbalancing*:org.apache.ignite.spi.communication*:org.apache.ignite.spi.deployment*:org.apache.ignite.spi.swapspace*:org.apache.ignite.spi.discovery*:org.apache.ignite.spi.failover*:org.apache.ignite.spi.eventstorage*:org.apache.ignite.spi.tracing*:org.apache.ignite.spi.metric*</packages> |
| </group> |
| <group> |
| <title>Development Utils</title> |
| <packages>org.apache.ignite.development.utils*</packages> |
| </group> |
| <group> |
| <title>SessionContext API</title> |
| <packages>org.apache.ignite.session</packages> |
| </group> |
| </groups> |
| </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>${maven.resources.plugin.version}</version> |
| </plugin> |
| |
| <plugin> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>build-helper-maven-plugin</artifactId> |
| <version>${build.helper.maven.plugin.version}</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>3.2.0</version> |
| </plugin> |
| |
| <plugin> |
| <groupId>org.codehaus.mojo</groupId> |
| <artifactId>exec-maven-plugin</artifactId> |
| <version>3.6.3</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-compiler-plugin</artifactId> |
| <version>${maven.compiler.plugin.version}</version> |
| <configuration> |
| <compilerArgs> |
| <arg>--add-exports</arg> |
| <arg>java.base/jdk.internal.misc=ALL-UNNAMED</arg> |
| <arg>--add-exports</arg> |
| <arg>java.base/jdk.internal.loader=ALL-UNNAMED</arg> |
| <arg>--add-exports</arg> |
| <arg>java.base/sun.nio.ch=ALL-UNNAMED</arg> |
| <arg>--add-exports</arg> |
| <arg>java.base/sun.net.util=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> |
| <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> |
| <argLine> |
| --add-opens=java.base/jdk.internal.access=ALL-UNNAMED |
| --add-opens=java.base/jdk.internal.loader=ALL-UNNAMED |
| --add-opens=java.base/jdk.internal.misc=ALL-UNNAMED |
| --add-opens=java.base/sun.net.util=ALL-UNNAMED |
| --add-opens=java.base/sun.nio.ch=ALL-UNNAMED |
| --add-opens=java.base/sun.nio.fs=ALL-UNNAMED |
| --add-opens=java.base/sun.util.calendar=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.net=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 |
| --add-opens=java.base/java.lang.reflect=ALL-UNNAMED |
| --add-opens=java.base/java.time=ALL-UNNAMED |
| --add-opens=java.base/java.text=ALL-UNNAMED |
| --add-opens=java.base/java.security=ALL-UNNAMED |
| --add-opens=java.logging/java.util.logging=ALL-UNNAMED |
| --add-opens=java.management/sun.management=ALL-UNNAMED |
| --add-opens=java.desktop/java.awt.font=ALL-UNNAMED |
| --add-opens=jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED |
| --add-opens=jdk.compiler/com.sun.tools.javac.main=ALL-UNNAMED |
| --add-opens=jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED |
| --add-opens=jdk.compiler/com.sun.tools.javac.file=ALL-UNNAMED |
| --add-opens=jdk.compiler/com.sun.tools.javac.parser=ALL-UNNAMED |
| --add-opens=jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED |
| --add-opens=java.base/java.util.regex=ALL-UNNAMED |
| </argLine> |
| </configuration> |
| </plugin> |
| |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-source-plugin</artifactId> |
| <version>${maven.source.plugin.version}</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> |
| </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>${maven.enforcer.plugin.version}</version> |
| <configuration> |
| <rules> |
| <requireMavenVersion> |
| <version>[3.9.6,)</version> |
| </requireMavenVersion> |
| <bannedDependencies> |
| <excludes> |
| <exclude>javax.transaction:jta</exclude> |
| <exclude>javax.transaction:javax.transaction-api</exclude> |
| <exclude>jakarta.transaction:jakarta.transaction-api:(,2.0.1)</exclude> |
| </excludes> |
| <message> |
| Use jakarta.transaction:jakarta.transaction-api:2.0.1+ only. |
| Add <exclusions> to the transitive source if this fails. |
| </message> |
| </bannedDependencies> |
| |
| </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>package</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/en/java/javase/17/docs/api/java.base/java/text/SimpleDateFormat.html --> |
| <pattern>yywwu</pattern> |
| <locale>en_US</locale> |
| </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>compile</phase> |
| </execution> |
| </executions> |
| <dependencies> |
| <dependency> |
| <groupId>org.apache.ignite</groupId> |
| <artifactId>ignite-checkstyle</artifactId> |
| <version>${revision}</version> |
| </dependency> |
| </dependencies> |
| </plugin> |
| </plugins> |
| </build> |
| </profile> |
| |
| <profile> |
| <id>check-licenses</id> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.rat</groupId> |
| <artifactId>apache-rat-plugin</artifactId> |
| <version>0.17</version> |
| <configuration> |
| <config>${maven.multiModuleProjectDirectory}/parent/rat-config.xml</config> |
| <!-- Disable SCM ignore file parsing to avoid RAT 0.17 race condition |
| with temporary NameSet files in parallel builds --> |
| <parseSCMIgnoresAsExcludes>false</parseSCMIgnoresAsExcludes> |
| </configuration> |
| <executions> |
| <execution> |
| <id>check-licenses</id> |
| <phase>validate</phase> |
| <goals> |
| <goal>check</goal> |
| </goals> |
| <configuration> |
| <inputExcludes> |
| <inputExclude>work/**</inputExclude> |
| <inputExclude>**/target/**</inputExclude> |
| <inputExclude>**/*.log</inputExclude> |
| <inputExclude>**/*.m4</inputExclude><!--Free Software Foundation notice--> |
| <inputExclude>**/*.dylib</inputExclude><!--bin-files--> |
| <inputExclude>**/*.gar</inputExclude><!--bin-files--> |
| <inputExclude>**/licenses/*.txt</inputExclude><!--files of licenses--> |
| <inputExclude>**/*readme*.txt</inputExclude><!--readme files--> |
| <inputExclude>**/*.sql</inputExclude><!--sql files--> |
| <inputExclude>**/*README*.txt</inputExclude><!--readme files--> |
| <inputExclude>**/*README*.md</inputExclude><!--readme files--> |
| <inputExclude>**/*CONTRIBUTING*.md</inputExclude><!--readme files--> |
| <inputExclude>**/*DEVNOTES*.md</inputExclude><!--readme files--> |
| <inputExclude>**/*index*.md</inputExclude><!--readme files--> |
| <inputExclude>**/*.timestamp</inputExclude><!--tmp-files--> |
| <inputExclude>**/*.iml</inputExclude><!--IDEA files--> |
| <inputExclude>**/*.csv</inputExclude><!--CSV files--> |
| <inputExclude>**/*.jks</inputExclude><!--bin-files--> |
| <inputExclude>**/*.svg</inputExclude><!--SVG-files--> |
| <inputExclude>**/pom-installed.xml</inputExclude><!--tmp-files--> |
| <inputExclude>**/keystore</inputExclude><!--bin-files--> |
| <inputExclude>**/keystore/*.jks</inputExclude><!--bin-files--> |
| <inputExclude>**/keystore/*.pem</inputExclude><!--auto generated files--> |
| <inputExclude>**/keystore/*.pfx</inputExclude><!--bin-files--> |
| <inputExclude>**/keystore/ca/*.jks</inputExclude><!--bin-files--> |
| <inputExclude>**/keystore/ca/*.key</inputExclude><!--bin-files--> |
| <inputExclude>**/keystore/ca/*.txt</inputExclude><!--auto generated files--> |
| <inputExclude>**/keystore/ca/*.txt.attr</inputExclude><!--auto generated files--> |
| <inputExclude>**/keystore/ca/*serial</inputExclude><!--auto generated files--> |
| <inputExclude>**/META-INF/services/**</inputExclude> <!-- Interface mappings: cannot be changed --> |
| <inputExclude>**/id_rsa**</inputExclude> <!--SSH--> |
| <!--special excludes--> |
| <!-- RAT 0.17 bug: creates temp dir NameSet* in basedir for case-sensitivity check --> |
| <inputExclude>NameSet*</inputExclude> |
| <inputExclude>**/.gitignore</inputExclude> |
| <inputExclude>**/.git</inputExclude> |
| <inputExclude>**/.asf.yaml</inputExclude> |
| <inputExclude>.travis.yml</inputExclude> |
| <inputExclude>.github/PULL_REQUEST_TEMPLATE.md</inputExclude> |
| <inputExclude>idea/ignite_codeStyle.xml</inputExclude> |
| <inputExclude>**/DEVNOTES*.txt</inputExclude> |
| <inputExclude>**/NOTICE*</inputExclude> |
| <inputExclude>**/LICENSE*</inputExclude> |
| <inputExclude>**/MIGRATION_GUIDE*</inputExclude> |
| <inputExclude>src/main/java/org/apache/ignite/internal/util/nio/SelectedSelectionKeySet.java</inputExclude><!-- Apache 2.0 license --> |
| <inputExclude>src/main/java/org/apache/ignite/internal/processors/query/calcite/sql/generated/*.java</inputExclude><!--auto generated files--> |
| <inputExclude>src/main/java/org/apache/ignite/internal/processors/query/stat/hll/**</inputExclude><!-- Apache 2.0 license, copyright Aggregate Knowledge, Inc. --> |
| <inputExclude>src/main/java/org/jsr166/*.java</inputExclude> |
| <inputExclude>src/main/java/org/mindrot/*.java</inputExclude> |
| <inputExclude>src/test/java/org/apache/ignite/p2p/p2p.properties</inputExclude><!--test depends on file content--> |
| <inputExclude>src/test/resources/org.apache.ignite.util/*.output</inputExclude><!--test depends on file content--> |
| <inputExclude>src/test/resources/org.apache.ignite.util/*.txt</inputExclude><!--test depends on file content--> |
| <inputExclude>src/test/resources/log/ignite.log.tst</inputExclude><!--test resource--> |
| <inputExclude>src/test/java/org/apache/ignite/spi/deployment/uri/META-INF/ignite.incorrefs</inputExclude><!--test resource--> |
| <inputExclude>src/test/java/org/apache/ignite/spi/deployment/uri/META-INF/ignite.empty</inputExclude><!--should be empty--> |
| <inputExclude>src/test/java/org/apache/ignite/spi/deployment/uri/META-INF/ignite.brokenxml</inputExclude><!--test resource--> |
| <inputExclude>**/books/*.txt</inputExclude><!--books examples--> |
| <inputExclude>src/main/java/org/apache/ignite/examples/streaming/wordcount/*.txt</inputExclude><!--books examples--> |
| <inputExclude>examples/src/main/java/org/apache/ignite/examples/streaming/wordcount/*.txt</inputExclude><!--books examples--> |
| <inputExclude>src/main/java/org/jetbrains/annotations/*.java</inputExclude><!--copyright--> |
| <inputExclude>dev-tools/IGNITE-*.patch</inputExclude> |
| <inputExclude>dev-tools/.gradle/**/*</inputExclude> |
| <inputExclude>dev-tools/gradle/wrapper/**/*</inputExclude> |
| <inputExclude>dev-tools/gradlew</inputExclude> |
| <inputExclude>src/test/binaries/repo/org/apache/ignite/binary/test2/1.1/test2-1.1.pom</inputExclude> |
| <inputExclude>src/test/binaries/repo/org/apache/ignite/binary/test2/maven-metadata-local.xml</inputExclude> |
| <inputExclude>src/test/binaries/repo/org/apache/ignite/binary/test1/1.1/test1-1.1.pom</inputExclude> |
| <inputExclude>src/test/binaries/repo/org/apache/ignite/binary/test1/maven-metadata-local.xml</inputExclude> |
| <inputExclude>src/test/resources/org/apache/ignite/internal/managers/discovery/Wrapper.ser</inputExclude> |
| <!--platforms--> |
| <inputExclude>src/test/binaries/repo/org/apache/ignite/binary/test1/1.1/test1-1.1.jar</inputExclude> |
| <inputExclude>src/test/binaries/repo/org/apache/ignite/binary/test2/1.1/test2-1.1.jar</inputExclude> |
| <inputExclude>**/*.cmake</inputExclude> |
| <inputExclude>**/CMakeLists.txt</inputExclude> |
| <inputExclude>**/CMakeSettings.json.in</inputExclude> |
| <inputExclude>**/cmake-build-*/</inputExclude> |
| <inputExclude>**/.idea/**</inputExclude> |
| <inputExclude>**/*.pc.in</inputExclude> |
| <inputExclude>**/*.sln</inputExclude> |
| <inputExclude>**/*.snk</inputExclude> |
| <inputExclude>**/*.slnrel</inputExclude> |
| <inputExclude>**/*.ini</inputExclude> |
| <inputExclude>**/*.DotSettings</inputExclude> |
| <inputExclude>**/*.FxCop</inputExclude> |
| <inputExclude>**/*.ruleset</inputExclude> |
| <inputExclude>**/*.csproj</inputExclude> |
| <inputExclude>**/*.ndproj</inputExclude> |
| <inputExclude>**/*.csprojrel</inputExclude> |
| <inputExclude>**/mkbuild.cmd</inputExclude> |
| <inputExclude>**/module.def</inputExclude> |
| <inputExclude>**/*.fxcop</inputExclude> |
| <inputExclude>**/*.ruleset</inputExclude> |
| <inputExclude>**/*.metaproj</inputExclude> |
| <inputExclude>**/*.metaproj.tmp</inputExclude> |
| <inputExclude>**/*.nunit</inputExclude> |
| <inputExclude>**/teamcity_boost.cpp</inputExclude> |
| <inputExclude>**/teamcity_messages.h</inputExclude> |
| <inputExclude>**/teamcity_messages.cpp</inputExclude> |
| <inputExclude>**/obj/x64/**</inputExclude> |
| <inputExclude>**/obj/x86/**</inputExclude> |
| <inputExclude>**/bin/x64/**</inputExclude> |
| <inputExclude>**/bin/x86/**</inputExclude> |
| <inputExclude>**/*.dxg</inputExclude> |
| <inputExclude>**/*.cmd</inputExclude> |
| <inputExclude>**/*.ps1</inputExclude> |
| <inputExclude>**/*.json</inputExclude> |
| <inputExclude>**/.dockerignore</inputExclude> |
| <inputExclude>modules/platforms/dotnet/Apache.Ignite.Core.Tests/Examples/ExpectedOutput/*.txt</inputExclude> |
| <!--Packaging --> |
| <inputExclude>packaging/**</inputExclude> |
| <!-- Calcite test scripts --> |
| <inputExclude>src/test/sql/**</inputExclude> |
| <!-- Ignite Documentation--> |
| <inputExclude>docs/_site/**</inputExclude> |
| <inputExclude>docs/assets/images/**</inputExclude> |
| <inputExclude>docs/Gemfile.lock</inputExclude> |
| <inputExclude>docs/.jekyll-cache/**</inputExclude> |
| <inputExclude>docs/_docs/images/**</inputExclude> |
| <inputExclude>docs/Gemfile</inputExclude> |
| <inputExclude>docs/assets/js/anchor.min.js</inputExclude><!-- Distributed under the MIT license. The original license header is badly formatted. --> |
| </inputExcludes> |
| </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>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> |
| |
| <profile> |
| <id>check-test-suites</id> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-surefire-plugin</artifactId> |
| <configuration> |
| <forkCount>1</forkCount> |
| </configuration> |
| </plugin> |
| </plugins> |
| </build> |
| </profile> |
| </profiles> |
| </project> |