1162 lines
49 KiB
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.13</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> |