blob: 7930ee81d259e287cc4cbf83b3f4788d2670def2 [file] [log] [blame]
<?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/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.apache</groupId>
<artifactId>apache</artifactId>
<version>18</version>
</parent>
<groupId>org.apache.mahout</groupId>
<artifactId>mahout</artifactId>
<version>14.1-SNAPSHOT</version>
<packaging>pom</packaging>
<name>Apache Mahout</name>
<url>http://mahout.apache.org</url>
<inceptionYear>2008</inceptionYear>
<description>Mahout's goal is to build scalable machine learning libraries. With scalable we mean: Scalable to
reasonably large data sets. Our core algorithms for clustering, classification and batch based collaborative
filtering are implemented on top of Apache Hadoop using the map/reduce paradigm. However we do not restrict
contributions to Hadoop based implementations: Contributions that run on a single node or on a non-Hadoop
cluster are welcome as well. The core libraries are highly optimized to allow for good performance also for
non-distributed algorithms. Scalable to support your business case. Mahout is distributed under a commercially
friendly Apache Software license. Scalable community. The goal of Mahout is to build a vibrant, responsive,
diverse community to facilitate discussions not only on the project itself but also on potential use cases. Come
to the mailing lists to find out more. Currently Mahout supports mainly four use cases: Recommendation mining
takes users' behavior and from that tries to find items users might like. Clustering takes e.g. text documents
and groups them into groups of topically related documents. Classification learns from existing categorized
documents what documents of a specific category look like and is able to assign unlabelled documents to the
(hopefully) correct category. Frequent itemset mining takes a set of item groups (terms in a query session,
shopping cart content) and identifies, which individual items usually appear together.
</description>
<organization>
<name>The Apache Software Foundation</name>
<url>http://www.apache.org/</url>
</organization>
<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>
<mailingLists>
<mailingList>
<name>User list</name>
<subscribe>user-subscribe@mahout.apache.org</subscribe>
<unsubscribe>user-unsubscribe@mahout.apache.org</unsubscribe>
<post>user@mahout.apache.org</post>
<archive>http://mail-archives.apache.org/mod_mbox/mahout-user/</archive>
<otherArchives>
<otherArchive>http://mahout.apache.org/mail/user/</otherArchive>
<otherArchive>http://mahout.markmail.org/</otherArchive>
<otherArchive>http://www.nabble.com/Mahout-User-List-f32042.html</otherArchive>
</otherArchives>
</mailingList>
<mailingList>
<name>Developers List</name>
<subscribe>dev-subscribe@mahout.apache.org</subscribe>
<unsubscribe>dev-unsubscribe@mahout.apache.org</unsubscribe>
<post>mahout-dev@mahout.apache.org</post>
<archive>http://mail-archives.apache.org/mod_mbox/mahout-dev/</archive>
<otherArchives>
<otherArchive>http://mahout.apache.org/mail/dev/</otherArchive>
<otherArchive>http://mahout.markmail.org/</otherArchive>
<otherArchive>http://www.nabble.com/Mahout-Developer-List-f32041.html</otherArchive>
</otherArchives>
</mailingList>
<mailingList>
<name>Commit notifications</name>
<subscribe>commits-subscribe@mahout.apache.org</subscribe>
<unsubscribe>commits-unsubscribe@mahout.apache.org</unsubscribe>
<archive>http://mail-archives.apache.org/mod_mbox/mahout-commits/</archive>
<otherArchives>
<otherArchive>http://mahout.apache.org/mail/commits/</otherArchive>
</otherArchives>
</mailingList>
</mailingLists>
<!-- Required for Release Plugin -->
<scm>
<connection>scm:git:git@github.com:apache/mahout.git</connection>
<developerConnection>scm:git:https://gitbox.apache.org/repos/asf/mahout.git</developerConnection>
<url>https://gitbox.apache.org/repos/asf?p=mahout.git;a=tree;h=refs/heads/${project.scm.tag};hb=${project.scm.tag}</url>
<tag>mahout-14.1
</tag>
</scm>
<properties>
<!--<skipTests>false</skipTests>-->
<apache-rat.plugin.version>0.13</apache-rat.plugin.version>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<mjavadoc.version>2.10.3</mjavadoc.version>
<slf4j.version>1.7.22</slf4j.version>
<scala.version>2.11.6</scala.version>
<scala.compat.version>2.11</scala.compat.version>
<source.plugin.version>3.0.1</source.plugin.version>
<spark.version>2.3.0</spark.version>
<spark.compat.version>2.3</spark.compat.version>
<depgraph.plugin.version>3.3.0</depgraph.plugin.version>
<!-- `mvn site` throws a hissy fit searching no longer existing repos if this is not set false -->
<dependency.locations.enabled>false</dependency.locations.enabled>
<!--hack to turn off linting og generated Javadocs. this is an error in Oracle Java8 and should be fixed in java9
http://openjdk.java.net/jeps/212-->
<additionalparam>-Xdoclint:-html</additionalparam>
<!--EndHack-->
<!--
<maven.clover.multiproject>true</maven.clover.multiproject>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<msurefire.version>2.18.1</msurefire.version>
<mpmd.version>3.4</mpmd.version>
<mcheckstyle.version>2.15</mcheckstyle.version>
<mfindbugs.version>3.0.1</mfindbugs.version>
<mscala.version>3.2.0</mscala.version>
<hbase.version>1.0.0</hbase.version>
<scala.compat.version>2.10</scala.compat.version>
<scala.version>2.10.4</scala.version>
<spark.version>1.6.3</spark.version>
<flink.version>1.1.4</flink.version>
<h2o.version>0.1.25</h2o.version>
<jackson.version>2.7.4</jackson.version>
<hadoop.version>2.4.1</hadoop.version>
<hadoop.classifier>hadoop2</hadoop.classifier>
-->
</properties>
<issueManagement>
<system>Jira</system>
<url>https://issues.apache.org/jira/browse/MAHOUT</url>
</issueManagement>
<repositories>
<repository>
<id>apache.snapshots</id>
<name>Apache Snapshot Repository</name>
<url>https://repository.apache.org/snapshots</url>
<releases>
<enabled>false</enabled>
</releases>
</repository>
</repositories>
<modules>
<module>core</module>
<module>engine</module>
<module>community</module>
<!-- <module>examples</module> -->
</modules>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>14.0.1</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-math3</artifactId>
<version>3.2</version>
</dependency>
<!-- scala stuff -->
<dependency>
<groupId>org.scalatest</groupId>
<artifactId>scalatest_${scala.compat.version}</artifactId>
<version>3.0.5</version>
</dependency>
<dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-reflect</artifactId>
<version>${scala.version}</version>
</dependency>
<dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-library</artifactId>
<version>${scala.version}</version>
</dependency>
<!-- TODO Move to ONE logging framework... -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>${slf4j.version}</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
<!-- used in Core -->
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
</dependencies>
</dependencyManagement>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.3</version>
<configuration>
<!-- encoding, source and target are explicitly defined until MNGECLIPSE-966 is fixed -->
<encoding>${project.build.sourceEncoding}</encoding>
<source>${maven.compiler.source}</source>
<target>${maven.compiler.target}</target>
<optimize>true</optimize>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<version>2.5.2</version>
<configuration>
<useReleaseProfile>true</useReleaseProfile>
<releaseProfiles>apache-release</releaseProfiles>
<goals>deploy</goals>
<autoVersionSubmodules>true</autoVersionSubmodules>
<arguments>${arguments}</arguments>
</configuration>
</plugin>
<!-- generate java doc -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>${mjavadoc.version}</version>
<executions>
<execution>
<id>attach-javadocs</id>
<phase>package</phase>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
<!-- Create Scala Docs -->
<plugin>
<groupId>net.alchim31.maven</groupId>
<artifactId>scala-maven-plugin</artifactId>
<version>3.4.4</version>
<executions>
<execution>
<id>attach-javadocs</id>
<phase>package</phase>
<goals>
<goal>doc-jar</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.rat</groupId>
<artifactId>apache-rat-plugin</artifactId>
<version>${apache-rat.plugin.version}</version>
<executions>
<execution>
<phase>validate</phase>
<goals>
<goal>check</goal>
</goals>
</execution>
</executions>
<configuration>
<licenses>
<license implementation="org.apache.rat.analysis.license.SimplePatternBasedLicense">
<patterns>
<note>CERN license for Colt -- basically only requires attribution</note>
<pattern>1999 CERN - European Organization for Nuclear Research</pattern>
</patterns>
</license>
<license implementation="org.apache.rat.analysis.license.SimplePatternBasedLicense">
<patterns>
<pattern>public domain</pattern>
</patterns>
</license>
</licenses>
<excludes>
<exclude>**/*.conf</exclude>
<exclude>**/*.iml</exclude>
<exclude>**/*.md</exclude>
<exclude>**/*.props</exclude>
<exclude>**/gen/**</exclude>
<exclude>**/resources/**</exclude>
<exclude>**/images/**</exclude>
<exclude>**/target/**</exclude>
<exclude>**/testdata/**</exclude>
<exclude>**/.idea/**</exclude>
<exclude>**/package-info.java</exclude>
<exclude>**/.git/**</exclude>
<exclude>**/.classpath</exclude>
<exclude>**/.project</exclude>
<exclude>**/.settings/**</exclude>
<exclude>**/*.patch</exclude>
<exclude>website/**</exclude>
<exclude>.github/*</exclude>
<exclude>**/*.properties</exclude>
</excludes>
<excludeSubProjects>false</excludeSubProjects>
</configuration>
</plugin>
<!-- delete jars on clean in top directory, which is lib/ -->
<plugin>
<artifactId>maven-clean-plugin</artifactId>
<version>3.0.0</version>
<configuration>
<filesets>
<fileset>
<directory>lib/</directory>
<includes>
<include>*.jar</include>
</includes>
<followSymlinks>false</followSymlinks>
</fileset>
<fileset>
<directory>doc/</directory>
<includes>
<include>*.jar</include>
</includes>
<followSymlinks>false</followSymlinks>
</fileset>
</filesets>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
<version>1.4</version>
<executions>
<execution>
<id>enforce-versions</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<requireJavaVersion>
<version>[1.8,)</version>
</requireJavaVersion>
<requireMavenVersion>
<version>[3.3.3,)</version>
</requireMavenVersion>
</rules>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<forkCount>2</forkCount>
<reuseForks>false</reuseForks>
<argLine>-Xmx768m -Djava.security.manager
-Djava.security.policy=${project.build.directory}/../../buildtools/src/test/resources/java.policy</argLine>
<argLine>-Djava.security.auth.login.config=${project.build.directory}/../../buildtools/src/test/resources/jaas.config</argLine>
<testFailureIgnore>false</testFailureIgnore>
<redirectTestOutputToFile>true</redirectTestOutputToFile>
<systemPropertyVariables>
<mahout.test.directory>${project.build.directory}</mahout.test.directory>
</systemPropertyVariables>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
<profiles>
<profile>
<id>all</id>
<modules>
<module>core</module>
<module>engine</module>
<module>community/spark-cli-drivers</module>
<!--<module>community/community-engines</module>-->
<!--<module>community/community-engines/flink-batch</module>-->
<!--<module>community/community-engines/h2o</module>-->
<!--<module>community/mahout-mr</module>-->
<!--<module>experimental</module>-->
<!--<module>experimental/viennacl</module>-->
<!--<module>experimental/viennacl-omp</module>-->
</modules>
</profile>
<profile>
<id>apache-release</id>
<modules>
<module>core</module>
<module>engine</module>
<module>community/spark-cli-drivers</module>
<!--<module>community/community-engines</module>-->
<!--<module>community/community-engines/flink-batch</module>-->
<!--<module>community/community-engines/h2o</module>-->
<!--<module>community/mahout-mr</module>-->
<!--<module>experimental</module>-->
<!--<module>experimental/viennacl</module>-->
<!--<module>experimental/viennacl-omp</module>-->
</modules>
<properties>
<skipTests>false</skipTests>
<maven.test.skip>false</maven.test.skip>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>${source.plugin.version}</version>
<configuration>
<skipSource>true</skipSource>
</configuration>
<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-jar-plugin</artifactId>
<configuration>
<skip>false</skip>
</configuration>
<executions>
<execution>
<id>test-jar</id>
<goals>
<goal>test-jar</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<executions>
<execution>
<id>bin-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<skipAssembly>${mahout.skip.distribution}</skipAssembly>
<descriptors>
<descriptor>buildtools/assembly/bin.xml</descriptor>
</descriptors>
<tarLongFileMode>gnu</tarLongFileMode>
<appendAssemblyId>true</appendAssemblyId>
</configuration>
</execution>
<execution>
<id>src-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<skipAssembly>${mahout.skip.distribution}</skipAssembly>
<descriptors>
<descriptor>buildtools/assembly/src.xml</descriptor>
</descriptors>
<tarLongFileMode>gnu</tarLongFileMode>
<appendAssemblyId>true</appendAssemblyId>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-release-plugin</artifactId>
<configuration>
<releaseProfiles>apache-release</releaseProfiles>
<preparationGoals>clean package install</preparationGoals>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<skipTests>false</skipTests>
<skipExec>true</skipExec>
</configuration>
</plugin>
</plugins>
</build>
<reporting>
<plugins>
<plugin>
<groupId>org.apache.rat</groupId>
<artifactId>apache-rat-plugin</artifactId>
</plugin>
<plugin>
<artifactId>maven-project-info-reports-plugin</artifactId>
<configuration>
<dependencyLocationsEnabled>false</dependencyLocationsEnabled>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<reportSets>
<reportSet>
<id>aggregate</id>
<reports>
<report>javadoc-no-fork</report>
<report>test-javadoc-no-fork</report>
<report>aggregate</report>
</reports>
</reportSet>
<reportSet>
<id>html</id>
<reports>
<report>javadoc</report>
</reports>
</reportSet>
</reportSets>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
</plugin>
<plugin>
<groupId>com.github.ferstl</groupId>
<artifactId>depgraph-maven-plugin</artifactId>
<version>${depgraph.plugin.version}</version>
</plugin>
</plugins>
</reporting>
</profile>
<profile>
<id>spark-cli-drivers</id>
<modules>
<module>community/spark-cli-drivers</module>
</modules>
</profile>
<profile>
<id>viennacl</id>
<modules>
<module>experimental/viennacl</module>
</modules>
</profile>
<profile>
<id>viennacl-omp</id>
<modules>
<module>experimental/viennacl-omp</module>
</modules>
</profile>
</profiles>
<reporting>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>3.0.0</version>
<configuration>
<configLocation>buildtools/src/main/resources/mahout-checkstyle.xml</configLocation>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
<version>3.7.1</version>
<configuration>
<reportPlugins>
<plugin>
<artifactId>maven-project-info-reports-plugin</artifactId>
<!--<version>2.2</version>-->
</plugin>
<plugin>
<groupId>net.alchim31.maven</groupId>
<artifactId>scala-maven-plugin</artifactId>
<!--<version>3.4.1</version>-->
<configuration>
<jvmArgs>
<jvmArg>-Xms64m</jvmArg>
<jvmArg>-Xmx1024m</jvmArg>
</jvmArgs>
</configuration>
</plugin>
</reportPlugins>
</configuration>
</plugin>
</plugins>
</reporting>
</project>