blob: 85b9377cdcf86c9b28abdf5f3fa9fd7c27c46f7e [file] [log] [blame]
<!--
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.giraph</groupId>
<artifactId>giraph-parent</artifactId>
<version>1.1.0</version>
</parent>
<artifactId>giraph-core</artifactId>
<packaging>jar</packaging>
<name>Apache Giraph Core</name>
<url>http://giraph.apache.org/giraph-core/</url>
<description>Giraph core classes</description>
<properties>
<export-target.dir>export/target</export-target.dir>
<top.dir>${project.basedir}/..</top.dir>
<project.jar>${project.basedir}/target/giraph-${project.version}-${forHadoop}-jar-with-dependencies.jar</project.jar>
</properties>
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
</resources>
<finalName>giraph-${project.version}-${forHadoop}</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<executions>
<execution>
<id>make-assembly</id>
<!-- this is used for inheritance merges -->
<phase>package</phase>
<!-- append to the packaging phase. -->
<configuration>
<!-- Specifies the configuration file of the assembly plugin -->
<descriptors>
<descriptor>src/main/assembly/assembly.xml</descriptor>
</descriptors>
<outputDirectory>target</outputDirectory>
</configuration>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-enforcer-plugin</artifactId>
</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>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
<configuration>
<siteDirectory>${project.basedir}/src/site</siteDirectory>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.6</version>
<configuration>
<systemProperties>
<property>
<name>prop.jarLocation</name>
<value>${project.jar}</value>
</property>
</systemProperties>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.rat</groupId>
<artifactId>apache-rat-plugin</artifactId>
</plugin>
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.6</version>
<executions>
<execution>
<phase>compile</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<target>
<java classname="org.apache.giraph.conf.AllOptions">
<classpath>
<pathelement location="${project.jar}"/>
<pathelement path="${maven.dependency.org.apache.hadoop.hadoop-common.jar.path}"/>
<pathelement path="${maven.dependency.org.apache.hadoop.hadoop-core.jar.path}"/>
</classpath>
<arg value="${top.dir}/src/site/xdoc/options.xml" />
</java>
</target>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>findbugs-maven-plugin</artifactId>
<version>2.5.1</version>
<configuration>
<xmlOutput>true</xmlOutput>
<findbugsXmlOutput>false</findbugsXmlOutput>
<excludeFilterFile>${top.dir}/findbugs-exclude.xml</excludeFilterFile>
</configuration>
<executions>
<execution>
<phase>verify</phase>
<goals>
<goal>check</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
<profiles>
<profile>
<id>hadoop_0.20.203</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<excludes>
<exclude>**/yarn/**</exclude>
</excludes>
<testExcludes>
<exclude>**/yarn/**</exclude>
</testExcludes>
</configuration>
</plugin>
<plugin>
<groupId>org.sonatype.plugins</groupId>
<artifactId>munge-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>hadoop_1</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<excludes>
<exclude>**/yarn/**</exclude>
</excludes>
<testExcludes>
<exclude>**/yarn/**</exclude>
</testExcludes>
</configuration>
</plugin>
<plugin>
<groupId>org.sonatype.plugins</groupId>
<artifactId>munge-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>hadoop_non_secure</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<excludes>
<exclude>**/yarn/**</exclude>
</excludes>
<testExcludes>
<exclude>**/yarn/**</exclude>
</testExcludes>
</configuration>
</plugin>
<plugin>
<groupId>org.sonatype.plugins</groupId>
<artifactId>munge-maven-plugin</artifactId>
<configuration>
<excludes>
**/comm/netty/SaslNettyClient.java,
**/comm/netty/SaslNettyServer.java,
**/comm/netty/handler/AuthorizeServerHandler.java,
**/comm/netty/handler/SaslClientHandler.java,
**/comm/netty/handler/SaslServerHandler.java,
**/comm/requests/SaslCompleteRequest.java,
**/comm/requests/SaslTokenMessageRequest.java,
**/comm/SaslConnectionTest.java
</excludes>
</configuration>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>hadoop_facebook</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<excludes>
<exclude>**/yarn/**</exclude>
</excludes>
<testExcludes>
<exclude>**/yarn/**</exclude>
</testExcludes>
</configuration>
</plugin>
<plugin>
<groupId>org.sonatype.plugins</groupId>
<artifactId>munge-maven-plugin</artifactId>
<configuration>
<excludes>
**/comm/netty/SaslNettyClient.java,
**/comm/netty/SaslNettyServer.java,
**/comm/netty/handler/AuthorizeServerHandler.java,
**/comm/netty/handler/SaslClientHandler.java,
**/comm/netty/handler/SaslServerHandler.java,
**/comm/requests/SaslCompleteRequest.java,
**/comm/requests/SaslTokenMessageRequest.java,
**/comm/SaslConnectionTest.java
</excludes>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>hadoop_0.23</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<excludes>
<exclude>**/yarn/**</exclude>
</excludes>
<testExcludes>
<exclude>**/yarn/**</exclude>
</testExcludes>
</configuration>
</plugin>
<plugin>
<groupId>org.sonatype.plugins</groupId>
<artifactId>munge-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
</plugin>
</plugins>
</build>
</profile>
<!-- Currently supports hadoop-2.0.3-alpha
(see hadoop_yarn profile in giraph-parent POM to change) -->
<profile>
<id>hadoop_yarn</id>
<build>
<plugins>
<plugin>
<groupId>org.sonatype.plugins</groupId>
<artifactId>munge-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</profile>
<!-- Unmunged profiles are below. -->
<profile>
<id>hadoop_2</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<excludes>
<exclude>**/yarn/**</exclude>
</excludes>
<testExcludes>
<exclude>**/yarn/**</exclude>
</testExcludes>
</configuration>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>hadoop_2.0.0</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<excludes>
<exclude>**/yarn/**</exclude>
</excludes>
<testExcludes>
<exclude>**/yarn/**</exclude>
</testExcludes>
</configuration>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>hadoop_2.0.1</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<excludes>
<exclude>**/yarn/**</exclude>
</excludes>
<testExcludes>
<exclude>**/yarn/**</exclude>
</testExcludes>
</configuration>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>hadoop_2.0.2</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<excludes>
<exclude>**/yarn/**</exclude>
</excludes>
<testExcludes>
<exclude>**/yarn/**</exclude>
</testExcludes>
</configuration>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>hadoop_2.0.3</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<excludes>
<exclude>**/yarn/**</exclude>
</excludes>
<testExcludes>
<exclude>**/yarn/**</exclude>
</testExcludes>
</configuration>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>hadoop_trunk</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<excludes>
<exclude>**/yarn/**</exclude>
</excludes>
<testExcludes>
<exclude>**/yarn/**</exclude>
</testExcludes>
</configuration>
</plugin>
</plugins>
</build>
</profile>
</profiles>
<dependencies>
<!-- compile dependencies. sorted lexicographically. -->
<dependency>
<groupId>com.facebook.nifty</groupId>
<artifactId>nifty-client</artifactId>
</dependency>
<dependency>
<groupId>com.facebook.swift</groupId>
<artifactId>swift-annotations</artifactId>
</dependency>
<dependency>
<groupId>com.facebook.swift</groupId>
<artifactId>swift-codec</artifactId>
</dependency>
<dependency>
<groupId>com.facebook.swift</groupId>
<artifactId>swift-service</artifactId>
</dependency>
<dependency>
<groupId>com.facebook.thirdparty.yourkit-api</groupId>
<artifactId>yjp-controller-api-redist</artifactId>
</dependency>
<dependency>
<groupId>com.google.code.findbugs</groupId>
<artifactId>annotations</artifactId>
</dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
</dependency>
<dependency>
<groupId>com.yammer.metrics</groupId>
<artifactId>metrics-core</artifactId>
</dependency>
<dependency>
<groupId>commons-cli</groupId>
<artifactId>commons-cli</artifactId>
</dependency>
<dependency>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
</dependency>
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty-all</artifactId>
</dependency>
<dependency>
<groupId>net.iharder</groupId>
<artifactId>base64</artifactId>
</dependency>
<dependency>
<groupId>it.unimi.dsi</groupId>
<artifactId>fastutil</artifactId>
</dependency>
<dependency>
<groupId>org.apache.zookeeper</groupId>
<artifactId>zookeeper</artifactId>
</dependency>
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-core-asl</artifactId>
</dependency>
<dependency>
<groupId>org.codehaus.jackson</groupId>
<artifactId>jackson-mapper-asl</artifactId>
</dependency>
<dependency>
<groupId>org.jodah</groupId>
<artifactId>typetools</artifactId>
</dependency>
<dependency>
<groupId>org.json</groupId>
<artifactId>json</artifactId>
</dependency>
<dependency>
<groupId>org.python</groupId>
<artifactId>jython</artifactId>
</dependency>
<!-- runtime dependency -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<scope>runtime</scope>
</dependency>
<!-- test dependencies. sorted lexicographically. -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
</project>