cavis/pom.xml

1162 lines
49 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<!--
~ /* ******************************************************************************
~ *
~ *
~ * This program and the accompanying materials are made available under the
~ * terms of the Apache License, Version 2.0 which is available at
~ * https://www.apache.org/licenses/LICENSE-2.0.
~ *
~ * See the NOTICE file distributed with this work for additional
~ * information regarding copyright ownership.
~ * 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.
~ *
~ * SPDX-License-Identifier: Apache-2.0
~ ******************************************************************************/
-->
<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>
<groupId>org.deeplearning4j</groupId>
<artifactId>deeplearning4j</artifactId>
<version>1.0.0-SNAPSHOT</version>
<packaging>pom</packaging>
<name>deeplearning4j</name>
<description>Deeplearning4j Monorepo</description>
<url>http://deeplearning4j.konduit.ai/</url>
<licenses>
<license>
<name>Apache License, Version 2.0</name>
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
<distribution>repo</distribution>
</license>
</licenses>
<modules>
<module>libnd4j</module>
<module>nd4j</module>
<module>datavec</module>
<module>deeplearning4j</module>
<module>python4j</module>
<module>rl4j</module>
</modules>
<scm>
<connection>scm:git://github.com:eclipse/deeplearning4j.git</connection>
<developerConnection>scm:git:git@github.com:eclipse/deeplearning4j.git
</developerConnection>
<url>git@github.com:eclipse/deeplearning4j.git</url>
<tag>HEAD</tag>
</scm>
<repositories>
<repository>
<id>sonatype-nexus-snapshots</id>
<name>Sonatype Nexus Snapshots</name>
<url>https://oss.sonatype.org/content/repositories/snapshots</url>
<releases>
<enabled>false</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
<updatePolicy>daily</updatePolicy> <!-- Optional, update daily -->
</snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>sonatype-nexus-snapshots</id>
<name>Sonatype Nexus Snapshots</name>
<url>https://oss.sonatype.org/content/repositories/snapshots</url>
<releases>
<enabled>false</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
<updatePolicy>daily</updatePolicy> <!-- Optional, update daily -->
</snapshots>
</pluginRepository>
</pluginRepositories>
<properties>
<maven.compiler.source>1.7</maven.compiler.source>
<maven.compiler.target>1.7</maven.compiler.target>
<maven.compiler.testTarget>1.8</maven.compiler.testTarget>
<maven.compiler.testSource>1.8</maven.compiler.testSource>
<encoding>UTF-8</encoding>
<project.build.sourceEncoding>${encoding}</project.build.sourceEncoding>
<project.reporting.outputEncoding>${encoding}</project.reporting.outputEncoding>
<project.resources.sourceEncoding>${encoding}</project.resources.sourceEncoding>
<archetype.encoding>${encoding}</archetype.encoding>
<deeplearning4j.version>1.0.0-SNAPSHOT</deeplearning4j.version>
<dl4j.version>1.0.0-SNAPSHOT</dl4j.version>
<nd4j.version>1.0.0-SNAPSHOT</nd4j.version>
<datavec.version>1.0.0-SNAPSHOT</datavec.version>
<dl4j-test-resources.version>1.0.0-SNAPSHOT</dl4j-test-resources.version>
<dl4j-test-resources.classifier></dl4j-test-resources.classifier>
<rxjava.version>2.2.21</rxjava.version>
<jackson-asl.version>1.9.13</jackson-asl.version>
<asm.version>5.1</asm.version>
<arrow.version>0.11.0</arrow.version>
<avro.version>1.7.7</avro.version>
<curator.version>2.8.0</curator.version>
<guice.version>4.0</guice.version>
<hibernate.version>5.1.3.Final</hibernate.version>
<hppc.version>0.8.1</hppc.version>
<httpclient.version>4.5.3</httpclient.version>
<httpcore.version>4.4.6</httpcore.version>
<httpmime.version>4.5.3</httpmime.version>
<janino.version>2.7.8</janino.version>
<javassist.version>3.19.0-GA</javassist.version>
<jets3t.version>0.7.1</jets3t.version>
<jetty.version>9.4.10.v20180503</jetty.version>
<jersey.version>2.29</jersey.version>
<jsch.version>0.1.51</jsch.version>
<leveldb.version>1.8</leveldb.version>
<lz4.version>1.3.0</lz4.version>
<metrics.version>3.2.6</metrics.version>
<netty.version>4.1.58.Final</netty.version>
<objenesis.version>2.6</objenesis.version>
<paranamer.version>2.6</paranamer.version>
<ws.rs.version>2.0</ws.rs.version>
<servlet.version>3.1.0</servlet.version>
<snakeyaml.version>1.12</snakeyaml.version>
<snappy.version>1.1.2.6</snappy.version>
<!-- FIXME: Might need be synced with all modules that uses spring-core plugin (nd4j-cuda-11.0, nd4j-tests, nd4j-common-tests) -->
<spring.version>5.1.1.RELEASE</spring.version>
<t-digest.version>3.2</t-digest.version>
<oshi.version>3.4.2</oshi.version>
<kafka.version>0.8.2.2</kafka.version>
<typesafe.config.version>1.3.0</typesafe.config.version>
<py4j.version>0.10.4</py4j.version>
<jcommander.version>1.27</jcommander.version>
<dropwizard.version>0.8.0</dropwizard.version>
<jodatime.version>2.2</jodatime.version>
<protonpack.version>1.15</protonpack.version>
<poi.version>3.17</poi.version>
<jodah.typetools.version>0.5.0</jodah.typetools.version>
<freemarker.version>2.3.23</freemarker.version>
<geoip2.version>2.8.1</geoip2.version>
<stream.analytics.version>2.9.8</stream.analytics.version>
<opencsv.version>2.3</opencsv.version>
<tdigest.version>3.2</tdigest.version>
<jtransforms.version>3.1</jtransforms.version>
<fastutil.version>6.5.7</fastutil.version>
<unirest.version>1.4.9</unirest.version>
<reflections.version>0.9.10</reflections.version>
<breeze.version>1.0</breeze.version>
<byteunits.version>0.9.1</byteunits.version>
<!-- To skip header file parsing phase: -Djavacpp.parser.skip=true -->
<javacpp.parser.skip>false</javacpp.parser.skip>
<!-- To skip native compilation phase: -Djavacpp.compiler.skip=true -->
<javacpp.compiler.skip>false</javacpp.compiler.skip>
<javacpp.platform.root/> <!-- -Djavacpp.platform.root=/path/to/android-ndk/ -->
<javacpp.platform.compiler/> <!-- -Djavacpp.platform.compiler=/path/to/arm-linux-androideabi-g++ -->
<javacpp.platform.sysroot/> <!-- -Djavacpp.platform.sysroot=$(xcrun -sdk iphoneos -show-sdk-path) -->
<javacpp.platform.extension/> <!-- -Djavacpp.platform.extension=-avx512 -->
<javacpp.platform.properties>${javacpp.platform}</javacpp.platform.properties>
<javacpp.version>1.5.5</javacpp.version>
<javacpp-presets.version>1.5.5</javacpp-presets.version>
<javacv.version>1.5.5</javacv.version>
<javacpp.platform.additionalIncludePaths />
<javacpp.platform.cppincludepath />
<javacpp.platform.library.path />
<!-- Used in nd4j-backend-impls for directory-maven-plugin to assist with finding native libs for tests -->
<nd4j.native.basedir />
<nd4j.cuda.basedir />
<python.version>3.9.2</python.version>
<cpython-platform.version>${python.version}-${javacpp-presets.version}</cpython-platform.version>
<numpy.version>1.20.1</numpy.version>
<numpy.javacpp.version>${numpy.version}-${javacpp-presets.version}</numpy.javacpp.version>
<openblas.version>0.3.13</openblas.version>
<mkl.version>2021.1</mkl.version>
<opencv.version>4.5.1</opencv.version>
<ffmpeg.version>4.3.2</ffmpeg.version>
<leptonica.version>1.80.0</leptonica.version>
<hdf5.version>1.12.0</hdf5.version>
<ale.version>0.6.1</ale.version>
<gym.version>0.18.0</gym.version>
<tensorflow.version>1.15.5</tensorflow.version>
<tensorflow.javacpp.version>${tensorflow.version}-${javacpp-presets.version}</tensorflow.javacpp.version>
<archunit.version>0.14.1</archunit.version>
<commons-compress.version>1.18</commons-compress.version>
<commonsmath.version>3.5</commonsmath.version>
<commonslang.version>3.6</commonslang.version>
<commonsio.version>2.5</commonsio.version>
<commons-codec.version>1.10</commons-codec.version>
<commons.math.version>${commonsmath.version}</commons.math.version>
<commons.lang.version>${commonslang.version}</commons.lang.version>
<commons.io.version>${commonsio.version}</commons.io.version>
<commons-math3.version>${commonsmath.version}</commons-math3.version>
<commons-lang.version>2.6</commons-lang.version>
<commons-lang3.version>${commonslang.version}</commons-lang3.version>
<commons-logging.version>1.2</commons-logging.version>
<commons-net.version>3.1</commons-net.version>
<commons-io.version>${commonsio.version}</commons-io.version>
<commons-collections.version>3.2.2</commons-collections.version>
<commons-collections4.version>4.1</commons-collections4.version>
<spark.version>2.4.5</spark.version>
<spark.major.version>2</spark.major.version>
<args4j.version>2.0.29</args4j.version>
<slf4j.version>1.7.21</slf4j.version>
<junit.version>4.12</junit.version>
<archunit.version>0.14.1</archunit.version>
<logback.version>1.2.3</logback.version>
<jackson.version>2.10.1</jackson.version>
<jackson.databind.version>2.10.3</jackson.databind.version>
<shaded.snakeyaml.version>1.24</shaded.snakeyaml.version>
<geo.jackson.version>2.8.7</geo.jackson.version>
<lombok.version>1.18.16</lombok.version>
<cleartk.version>2.0.0</cleartk.version>
<lucene-solr.version>7.7.1</lucene-solr.version>
<json.version>20131018</json.version>
<google.protobuf.version>3.8.0</google.protobuf.version>
<google.protobuf.solr.version>2.6.1</google.protobuf.solr.version>
<failIfNoTests>false</failIfNoTests>
<!-- Hadoop version used by Spark 1.6.3 and 2.2.1 (and likely others) -->
<hadoop.version>2.2.0</hadoop.version>
<camel.version>2.16.3</camel.version>
<zookeeper.version>3.4.6</zookeeper.version>
<agrona.version>0.5.4</agrona.version>
<mapdb.version>3.0.5</mapdb.version>
<sqlite.version>3.15.1</sqlite.version>
<!-- 2.7.3 has Scala 2.11, 2.12 and 2.13 support only (no 2.10) -->
<playframework.version>2.7.3</playframework.version>
<javax.ws.rs.version>2.0</javax.ws.rs.version>
<guava.jre.version>28.0-jre</guava.jre.version>
<guava.android.version>28.0-android</guava.android.version>
<gson.version>2.8.0</gson.version>
<fbs.version>1.2.0-3f79e055</fbs.version>
<threadly.version>4.10.0</threadly.version>
<vertx.version>3.9.0</vertx.version>
<flatbuffers.version>1.10.0</flatbuffers.version>
<grpc.version>1.14.0</grpc.version>
<javax.annotation-api.version>1.2</javax.annotation-api.version>
<javax.activation.version>1.1.1</javax.activation.version>
<jaxb.version>2.3.0</jaxb.version>
<maven-gpg-plugin.version>1.6</maven-gpg-plugin.version>
<maven-source-plugin.version>3.0.1</maven-source-plugin.version>
<maven-javadoc-plugin.version>3.0.1</maven-javadoc-plugin.version>
<maven-deploy-plugin.version>2.8.2</maven-deploy-plugin.version>
<maven-release-plugin.version>2.5.3</maven-release-plugin.version>
<maven-compiler-plugin.version>3.8.1</maven-compiler-plugin.version>
<maven-scala-plugin.version>3.3.1</maven-scala-plugin.version>
<maven-resources-plugin.version>3.0.1</maven-resources-plugin.version>
<sbt-compiler-maven-plugin.version>1.0.0</sbt-compiler-maven-plugin.version>
<maven-git-commit-plugin.version>2.2.2</maven-git-commit-plugin.version>
<maven-git-commit-id-plugin.version>${maven-git-commit-plugin.version}
</maven-git-commit-id-plugin.version>
<maven-build-helper-plugin.version>3.0.0</maven-build-helper-plugin.version>
<maven-play2-plugin.version>1.0.0-beta5</maven-play2-plugin.version>
<maven-surefire-plugin.version>2.19.1</maven-surefire-plugin.version>
<maven-surefire.version>${maven-surefire-plugin.version}</maven-surefire.version>
<maven-enforcer-plugin.version>1.4.1</maven-enforcer-plugin.version>
<maven-lint-plugin.version>0.0.11</maven-lint-plugin.version>
<maven-formatter-plugin.version>2.12.1</maven-formatter-plugin.version>
<maven-lifecycle-mapping-plugin.version>1.0.0</maven-lifecycle-mapping-plugin.version>
<maven-lifecycle-mapping.version>${maven-lifecycle-mapping-plugin.version}
</maven-lifecycle-mapping.version>
<maven-shade-plugin.version>3.2.1</maven-shade-plugin.version>
<maven-jar-plugin.version>3.0.2</maven-jar-plugin.version>
<maven-dependency-plugin.version>3.0.0</maven-dependency-plugin.version>
<maven-invoker-plugin.version>2.2</maven-invoker-plugin.version>
<maven-antrun-plugin.version>1.8</maven-antrun-plugin.version>
<maven-replacer-plugin.version>1.5.3</maven-replacer-plugin.version>
<protoc-jar-maven-plugin.version>3.8.0</protoc-jar-maven-plugin.version>
<mockito.version>2.2.6</mockito.version>
<exec-maven-plugin.version>1.6.0</exec-maven-plugin.version>
<jetspeed-mvn-maven-plugin.version>2.3.1</jetspeed-mvn-maven-plugin.version>
<!-- base versions -->
<!-- Scala 2.11.x -->
<scala211.version>2.11.12</scala211.version>
<scala211.binary.version>2.11</scala211.binary.version>
<!-- Scala 2.12.x -->
<scala212.version>2.12.9</scala212.version>
<scala212.binary.version>2.12</scala212.binary.version>
<scalatest.version>3.0.5</scalatest.version>
<scalafmt.version>1.3.0</scalafmt.version>
<scalacheck.version>1.14.0</scalacheck.version>
<libnd4j.tests>--tests</libnd4j.tests>
<libnd4j.test.skip>false</libnd4j.test.skip>
<jumpy.test.skip>false</jumpy.test.skip>
<pydatavec.test.skip>false</pydatavec.test.skip>
<pydl4j.test.skip>false</pydl4j.test.skip>
<skipBackendChoice>false</skipBackendChoice>
<!-- Test resource profile must be enabled unless using -DskipTests etc -->
<skipTestResourceEnforcement>false</skipTestResourceEnforcement>
<findbugs-annotations.version>1.3.9-1</findbugs-annotations.version>
<byteunits.version>0.9.1</byteunits.version>
<neoitertools.version>1.0.0</neoitertools.version>
<rxjava.version>2.2.0</rxjava.version>
<kotlin.version>1.4.30</kotlin.version>
<junit4git.version>1.3</junit4git.version>
</properties>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-stdlib-jdk8</artifactId>
<version>${kotlin.version}</version>
</dependency>
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-test</artifactId>
<version>${kotlin.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty-all</artifactId>
<version>${netty.version}</version>
</dependency>
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty</artifactId>
<version>3.9.9.Final</version>
</dependency>
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty-buffer</artifactId>
<version>${netty.version}</version>
</dependency>
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty-common</artifactId>
<version>${netty.version}</version>
</dependency>
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty-handler</artifactId>
<version>${netty.version}</version>
</dependency>
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty-codec-http</artifactId>
<version>${netty.version}</version>
</dependency>
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty-codec</artifactId>
<version>${netty.version}</version>
</dependency>
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty-transport-native-epoll</artifactId>
<version>${netty.version}</version>
</dependency>
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty-transport</artifactId>
<version>${netty.version}</version>
</dependency>
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty-resolver</artifactId>
<version>${netty.version}</version>
</dependency>
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty-transport-native-unix-common</artifactId>
<version>${netty.version}</version>
</dependency>
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty-codec-http2</artifactId>
<version>${netty.version}</version>
</dependency>
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty-handler-proxy</artifactId>
<version>${netty.version}</version>
</dependency>
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty-codec-socks</artifactId>
<version>${netty.version}</version>
</dependency>
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty-resolver-dns</artifactId>
<version>${netty.version}</version>
</dependency>
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty-codec-dns</artifactId>
<version>${netty.version}</version>
</dependency>
<dependency>
<groupId>org.walkmod</groupId>
<artifactId>junit4git</artifactId>
<version>${junit4git.version}</version>
<scope>test</scope>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<!-- <sourceDirectory>contrib</sourceDirectory>-->
<pluginManagement>
<plugins>
<plugin>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-maven-plugin</artifactId>
<version>${kotlin.version}</version>
<configuration>
<args>
<arg>-Xjsr305=strict</arg>
</args>
<compilerPlugins>
<plugin>spring</plugin>
<plugin>jpa</plugin>
</compilerPlugins>
</configuration>
<dependencies>
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-maven-allopen</artifactId>
<version>1.4.30-M1</version>
</dependency>
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-maven-noarg</artifactId>
<version>1.4.30-M1</version>
</dependency>
</dependencies>
<executions>
<execution>
<id>compile</id>
<goals> <goal>compile</goal> </goals>
<configuration>
<sourceDirs>
<sourceDir>${project.basedir}/src/main/stubs</sourceDir>
<sourceDir>${project.basedir}/src/main/kotlin</sourceDir>
<sourceDir>${project.basedir}/src/main/java</sourceDir>
<sourceDir>${project.basedir}/src/main/ops</sourceDir>
</sourceDirs>
</configuration>
</execution>
<execution>
<id>test-compile</id>
<goals> <goal>test-compile</goal> </goals>
<configuration>
<sourceDirs>
<sourceDir>${project.basedir}/src/test/stubs</sourceDir>
<sourceDir>${project.basedir}/src/test/kotlin</sourceDir>
<sourceDir>${project.basedir}/src/test/java</sourceDir>
<sourceDir>${project.basedir}/src/test/ops</sourceDir>
</sourceDirs>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>${maven-compiler-plugin.version}</version>
<configuration>
<source>${maven.compiler.source}</source>
<target>${maven.compiler.target}</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
<version>1.4.1</version>
<executions>
<execution>
<id>enforce-maven</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<requireMavenVersion>
<version>3.3</version>
<message>Please install maven 3.3 or higher</message>
</requireMavenVersion>
</rules>
</configuration>
</execution>
<execution>
<id>enforce-excluded-dependencies</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<bannedDependencies>
<excludes>
<exclude>org.projectlombok:*:*:*:compile</exclude>
</excludes>
</bannedDependencies>
</rules>
</configuration>
</execution>
</executions>
</plugin>
<!-- Configuration for git-commit-id plugin - used with ND4J version check functionality -->
<plugin>
<groupId>pl.project13.maven</groupId>
<artifactId>git-commit-id-plugin</artifactId>
<version>${maven-git-commit-plugin.version}</version>
<executions>
<execution>
<goals>
<goal>revision</goal>
</goals>
<phase>generate-resources</phase>
</execution>
</executions>
<configuration>
<generateGitPropertiesFile>true</generateGitPropertiesFile>
<failOnNoGitDirectory>false</failOnNoGitDirectory>
<generateGitPropertiesFilename>
${project.basedir}/target/generated-sources/src/main/resources/org/eclipse/${project.groupId}-${project.artifactId}-git.properties
</generateGitPropertiesFilename>
<gitDescribe>
<skip>true</skip>
</gitDescribe>
</configuration>
</plugin>
<!-- Add generated git.properties files resource directory, for output of git-commit-id plugin -->
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>${maven-build-helper-plugin.version}</version>
<executions>
<execution>
<id>add-resource</id>
<phase>generate-resources</phase>
<goals>
<goal>add-resource</goal>
</goals>
<configuration>
<resources>
<resource>
<directory>
${project.basedir}/target/generated-sources/src/main/resources
</directory>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version>
<configuration>
<lifecycleMappingMetadata>
<pluginExecutions>
<pluginExecution>
<pluginExecutionFilter>
<groupId>com.lewisd</groupId>
<artifactId>lint-maven-plugin</artifactId>
<versionRange>[0.0.11,)</versionRange>
<goals>
<goal>check</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore/>
</action>
</pluginExecution>
</pluginExecutions>
</lifecycleMappingMetadata>
</configuration>
</plugin>
<plugin>
<groupId>net.revelc.code.formatter</groupId>
<artifactId>formatter-maven-plugin</artifactId>
<version>${maven-formatter-plugin.version}</version>
<configuration>
<!--suppress UnresolvedMavenProperty -->
<configFile>${session.executionRootDirectory}/../contrib/formatter.xml</configFile>
</configuration>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<!-- Note this will not work if you run tests using -rf : and the nd4j module is not present. Ensure -rf: always starts from a point that includes nd4j.-->
<groupId>org.commonjava.maven.plugins</groupId>
<artifactId>directory-maven-plugin</artifactId>
<version>0.3.1</version>
<executions>
<execution>
<id>native-dir</id>
<goals>
<goal>directory-of</goal>
</goals>
<phase>initialize</phase>
<configuration>
<property>nd4j.basedir</property>
<project>
<groupId>org.nd4j</groupId>
<artifactId>nd4j</artifactId>
</project>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>${maven-source-plugin.version}</version>
<executions>
<execution>
<id>attach-sources</id>
<goals>
<goal>jar-no-fork</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
<version>1.4.1</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<version>2.8.2</version>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
<plugin>
<groupId>org.sonatype.plugins</groupId>
<artifactId>nexus-staging-maven-plugin</artifactId>
<version>1.6.8</version>
<executions>
<execution>
<id>default-deploy</id>
<phase>deploy</phase>
<goals>
<goal>deploy</goal>
</goals>
</execution>
</executions>
<extensions>true</extensions>
<configuration>
<serverId>sonatype-nexus-snapshots</serverId>
<nexusUrl>https://oss.sonatype.org/</nexusUrl>
<skipStagingRepositoryClose>true</skipStagingRepositoryClose>
</configuration>
</plugin>
<plugin>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-maven-plugin</artifactId>
<version>${kotlin.version}</version>
<executions>
<execution>
<id>compile</id>
<phase>compile</phase>
<goals>
<goal>compile</goal>
</goals>
</execution>
<execution>
<id>test-compile</id>
<phase>test-compile</phase>
<goals>
<goal>test-compile</goal>
</goals>
</execution>
</executions>
<configuration>
<jvmTarget>1.8</jvmTarget>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<executions>
<execution>
<id>default-compile</id>
<phase>none</phase>
</execution>
<execution>
<id>default-testCompile</id>
<phase>none</phase>
</execution>
<execution>
<id>compile</id>
<phase>compile</phase>
<goals>
<goal>compile</goal>
</goals>
</execution>
<execution>
<id>testCompile</id>
<phase>test-compile</phase>
<goals>
<goal>testCompile</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
<profiles>
<profile>
<id>github</id>
<distributionManagement>
<repository>
<id>github</id>
<name>GitHub Packages</name>
<url>https://maven.pkg.github.com/eclipse/deeplearning4j</url>
</repository>
<snapshotRepository>
<id>github</id>
<name>Github snapshots</name>
<url>https://maven.pkg.github.com/eclipse/deeplearning4j</url>
</snapshotRepository>
</distributionManagement>
</profile>
<profile>
<id>ossrh</id>
<distributionManagement>
<repository>
<id>sonatype-nexus-releases</id>
<name>Nexus Release Repository</name>
<url>http://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
</repository>
<snapshotRepository>
<id>sonatype-nexus-snapshots</id>
<name>Sonatype Nexus snapshot repository</name>
<url>https://oss.sonatype.org/content/repositories/snapshots</url>
</snapshotRepository>
</distributionManagement>
</profile>
<!-- This controls skipping the test backend choice enforcement below -->
<profile>
<id>skipTestCompileAndRun</id>
<activation>
<property>
<name>maven.test.skip</name>
<value>true</value>
</property>
</activation>
<properties>
<libnd4j.tests></libnd4j.tests>
<libnd4j.test.skip>true</libnd4j.test.skip>
<jumpy.test.skip>true</jumpy.test.skip>
<pydatavec.test.skip>true</pydatavec.test.skip>
<pydl4j.test.skip>true</pydl4j.test.skip>
<scala.test.skip>true</scala.test.skip>
<skipBackendChoice>true</skipBackendChoice>
<skipTestResourceEnforcement>true</skipTestResourceEnforcement>
</properties>
</profile>
<profile>
<id>skipTestRun</id>
<activation>
<property>
<name>skipTests</name>
</property>
</activation>
<properties>
<libnd4j.tests></libnd4j.tests>
<libnd4j.test.skip>true</libnd4j.test.skip>
<jumpy.test.skip>true</jumpy.test.skip>
<pydatavec.test.skip>true</pydatavec.test.skip>
<pydl4j.test.skip>true</pydl4j.test.skip>
<scala.test.skip>true</scala.test.skip>
<skipBackendChoice>true</skipBackendChoice>
<skipTestResourceEnforcement>true</skipTestResourceEnforcement>
</properties>
</profile>
<!--
testresources profile must be running when executing tests. However, maven enforcer plugin seems to be unable
to enforce only when actually running tests - so we'll skip the enforcement (using profiles skipTestRun and skipTestCompileAndRun)
when -DskipTests or -Dmaven.test.skip=true is used
-->
<profile>
<id>testresources</id>
<activation>
<activeByDefault>false</activeByDefault>
</activation>
<dependencies>
<dependency>
<groupId>org.deeplearning4j</groupId>
<artifactId>dl4j-test-resources</artifactId>
<version>${dl4j-test-resources.version}</version>
<classifier>${dl4j-test-resources.classifier}</classifier>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.walkmod</groupId>
<artifactId>junit4git</artifactId>
</dependency>
</dependencies>
</profile>
<profile>
<id>qa</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>3.1.2</version>
<executions>
<execution>
<phase>install</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<outputDirectory>${project.build.directory}/lib
</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>release</id>
<properties>
<maven.test.skip>true</maven.test.skip>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>${maven-javadoc-plugin.version}</version>
<configuration>
<doclint>all,-missing</doclint>
<quiet>true</quiet>
</configuration>
<executions>
<execution>
<id>attach-javadocs</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<version>${maven-gpg-plugin.version}</version>
<configuration>
<gpgArguments>
<arg>--pinentry-mode</arg>
<arg>loopback</arg>
</gpgArguments>
</configuration>
<executions>
<execution>
<id>sign-artifacts</id>
<phase>verify</phase>
<goals>
<goal>sign</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>trimSnapshots</id>
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>${maven-build-helper-plugin.version}</version>
<executions>
<execution>
<id>remove-old-artifacts</id>
<phase>package</phase>
<goals>
<goal>remove-project-artifact</goal>
</goals>
<configuration>
<removeAll>true
</removeAll><!-- remove all versions of built artifacts including all versions. Install phase will regenerate -->
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>1.9build</id>
<activation>
<jdk>1.9</jdk>
</activation>
<properties>
<maven.compiler.release>7</maven.compiler.release>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-toolchains-plugin</artifactId>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>libnd4jhome-defined</id>
<activation>
<property>
<name>env.LIBND4J_HOME</name>
</property>
</activation>
<properties>
<libnd4jhome>${env.LIBND4J_HOME}</libnd4jhome>
</properties>
</profile>
<profile>
<id>libnd4jhome-undefined</id>
<activation>
<property>
<name>!env.LIBND4J_HOME</name>
</property>
</activation>
<properties>
<libnd4jhome>${basedir}/../../../../libnd4j/</libnd4jhome>
</properties>
</profile>
<!-- For Android: -Dplatform=android-arm -->
<profile>
<id>javacpp-platform-default</id>
<activation>
<property>
<name>!javacpp.platform</name>
</property>
</activation>
<properties>
<javacpp.platform>${os.name}-${os.arch}</javacpp.platform>
</properties>
</profile>
<!-- Profiles to set the default javacpp.platform property: If someone knows a better way to do this, please do let me know! -->
<profile>
<id>linux</id>
<activation>
<os>
<name>linux</name>
</os>
</activation>
<properties>
<os.kernel>linux</os.kernel>
<os.name>linux</os.name>
</properties>
</profile>
<profile>
<id>macosx</id>
<activation>
<os>
<name>mac os x</name>
</os>
</activation>
<properties>
<os.kernel>darwin</os.kernel>
<os.name>macosx</os.name>
</properties>
</profile>
<profile>
<id>windows</id>
<activation>
<os>
<family>windows</family>
</os>
</activation>
<properties>
<os.kernel>windows</os.kernel>
<os.name>windows</os.name>
</properties>
</profile>
<profile>
<id>arm</id>
<activation>
<os>
<arch>arm</arch>
</os>
</activation>
<properties>
<os.arch>armhf</os.arch>
</properties>
</profile>
<profile>
<id>aarch64</id>
<activation>
<os>
<arch>aarch64</arch>
</os>
</activation>
<properties>
<os.arch>arm64</os.arch>
</properties>
</profile>
<profile>
<id>armv8</id>
<activation>
<os>
<arch>armv8</arch>
</os>
</activation>
<properties>
<os.arch>arm64</os.arch>
</properties>
</profile>
<profile>
<id>i386</id>
<activation>
<os>
<arch>i386</arch>
</os>
</activation>
<properties>
<os.arch>x86_64</os.arch>
</properties>
</profile>
<profile>
<id>i486</id>
<activation>
<os>
<arch>i486</arch>
</os>
</activation>
<properties>
<os.arch>x86_64</os.arch>
</properties>
</profile>
<profile>
<id>i586</id>
<activation>
<os>
<arch>i586</arch>
</os>
</activation>
<properties>
<os.arch>x86_64</os.arch>
</properties>
</profile>
<profile>
<id>i686</id>
<activation>
<os>
<arch>i686</arch>
</os>
</activation>
<properties>
<os.arch>x86_64</os.arch>
</properties>
</profile>
<profile>
<id>x86</id>
<activation>
<os>
<arch>x86</arch>
</os>
</activation>
<properties>
<os.arch>x86_64</os.arch>
</properties>
</profile>
<profile>
<id>amd64</id>
<activation>
<os>
<arch>amd64</arch>
</os>
</activation>
<properties>
<os.arch>x86_64</os.arch>
</properties>
</profile>
<profile>
<id>x86-64</id>
<activation>
<os>
<arch>x86-64</arch>
</os>
</activation>
<properties>
<os.arch>x86_64</os.arch>
</properties>
</profile>
<!-- Integration Tests Profile. By default (when this profile is not enabled) unit tests are run only.
Note also that some tests may run fewer/quicker cases for unit tests vs. integration tests
-->
<profile>
<id>integration-tests</id>
<activation>
<activeByDefault>false</activeByDefault>
</activation>
<build>
<plugins>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<version>${maven-surefire-plugin.version}</version>
<inherited>true</inherited>
<configuration>
<environmentVariables>
<DL4J_INTEGRATION_TESTS>true</DL4J_INTEGRATION_TESTS>
</environmentVariables>
<!-- <properties>
<property>
<name>listener</name>
<value>org.walkmod.junit4git.junit4.Junit4GitListener</value>
</property>
</properties>-->
</configuration>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>