Pom of ai.grakn:grakn:1.3.0

Back to ai.grakn:grakn:1.3.0

<?xml version="1.0" encoding="UTF-8"?>

<!--
  ~ GRAKN.AI - THE KNOWLEDGE GRAPH
  ~ Copyright (C) 2018 Grakn Labs Ltd
  ~
  ~ This program is free software: you can redistribute it and/or modify
  ~ it under the terms of the GNU Affero General Public License as
  ~ published by the Free Software Foundation, either version 3 of the
  ~ License, or (at your option) any later version.
  ~
  ~ This program is distributed in the hope that it will be useful,
  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  ~ GNU Affero General Public License for more details.
  ~
  ~ You should have received a copy of the GNU Affero General Public License
  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
  -->
<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>ai.grakn</groupId>
    <artifactId>grakn</artifactId>
    <packaging>pom</packaging>
    <version>1.3.0</version>
    <name>Grakn</name>
    <description>The Knowledge Graph</description>
    <url>https://grakn.ai</url>
    <modules>
        <module>grakn-kb</module>
        <module>grakn-graql</module>
        <module>grakn-graql-shell</module>
        <module>grakn-engine</module>
        <module>grakn-dashboard</module>
        <module>grakn-migration</module>
        <!--<module>grakn-dist</module>-->
        <!--<module>grakn-test</module>-->
        <module>grakn-core</module>
        <module>grakn-test-profiles</module>
        <module>grakn-factory</module>
        <module>client-java</module>
        <module>grakn-test-tools</module>
    </modules>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.resource.encoding>UTF-8</project.resource.encoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <java.version>1.8</java.version>
        <tinkerpop.version>3.2.9</tinkerpop.version>
        <junit.version>4.12</junit.version>
        <janus.version>0.2.0</janus.version>
        <guava.version>19.0</guava.version>
        <antlr.version>4.5</antlr.version>
        <jline.version>2.12</jline.version>
        <commons-cli.version>1.3</commons-cli.version>
        <spark-core.version>2.5.1</spark-core.version>
        <commons-collections.version>3.2.1</commons-collections.version>
        <commons-csv.version>1.3</commons-csv.version>
        <json.version>20160212</json.version>
        <rest-assured.version>2.7.0</rest-assured.version>
        <spark.version>1.6.1</spark.version>
        <jinjava.version>2.1.0</jinjava.version>
        <airline.version>0.6</airline.version>
        <antlr4.visitor>true</antlr4.visitor>
        <mjson.version>1.4.0</mjson.version>
        <logback.version>1.2.3</logback.version>
        <redis-mock.version>0.1.5</redis-mock.version>
        <janino.version>2.7.8</janino.version>
        <slf4j.version>1.7.20</slf4j.version>
        <csv.version>1.4</csv.version>
        <jool.version>3.8.5</jool.version>
        <cassandra-unit.version>2.1.9.2</cassandra-unit.version>
        <cassandra-all.version>2.1.17</cassandra-all.version>
        <h2-database.version>1.4.192</h2-database.version>
        <systen-rules.version>1.16.0</systen-rules.version>
        <mockito.version>2.6.4</mockito.version>
        <hamcrest.version>1.3</hamcrest.version>
        <quickcheck.version>0.7</quickcheck.version>
        <httpclient.version>4.5.3</httpclient.version>
        <findbugs.version>3.0.1</findbugs.version>
        <redis.version>2.9.0</redis.version>
        <metrics.version>3.2.3</metrics.version>
        <bytebuddy.version>1.6.14</bytebuddy.version>
        <jmh-core.version>1.19</jmh-core.version>
        <redis-test.version>0.6</redis-test.version>
        <guava-retrying.version>2.0.0</guava-retrying.version>
        <cassandra-driver-core.version>3.1.2</cassandra-driver-core.version>
        <jackson.version>2.8.5</jackson.version>
        <prometheus.version>0.0.13</prometheus.version>
        <auto-value.version>1.4.1</auto-value.version>
        <main.basedir>${project.basedir}</main.basedir>
        <spark-gremlin.version>3.2.5</spark-gremlin.version>
        <grpc.version>1.8.0</grpc.version>
        <netty-all.version>4.1.16.Final</netty-all.version>
        <google-bigtable.version>0.9.5.1</google-bigtable.version>
        <netty.version>1.1.33.Fork19</netty.version>
        <apache-http-core.version>4.4.6</apache-http-core.version>
        <ldbc-driver.version>0.3-SNAPSHOT</ldbc-driver.version>
        <pf4j.version>1.3.0</pf4j.version>
        <httpclient.version>4.5.1</httpclient.version>
        <jersey.version>1.19</jersey.version>
        <hystrix-core.version>1.5.12</hystrix-core.version>
        <failsafe.version>1.0.4</failsafe.version>
        <reactivex.version>1.3.2</reactivex.version>
        <zip4j.version>1.3.2</zip4j.version>
        <zt-exec.version>1.10</zt-exec.version>
        <!--TODO: Delete Jackson dependency when we change to dropwizard-->
        <jackson.version>2.9.2</jackson.version>
        <skip.deploy.dist>false</skip.deploy.dist>
    </properties>

    <organization>
      <name>GRAKN.AI</name>
      <url>https://grakn.ai</url>
    </organization>

    <licenses>
        <license>
            <name>GNU Affero GENERAL PUBLIC LICENSE, Version 3</name>
            <url>https://www.gnu.org/licenses/agpl.txt</url>
        </license>
        <license>
            <name>Grakn Commercial License</name>
        </license>
    </licenses>

    <developers>
        <developer>
            <name>Haikal Pribadi</name>
            <email>haikal@grakn.ai</email>
            <organization>Grakn Labs</organization>
            <organizationUrl>http://grakn.ai</organizationUrl>
        </developer>
        <developer>
            <name>Tomas Sabat</name>
            <email>tomas@grakn.ai</email>
            <organization>Grakn Labs</organization>
            <organizationUrl>http://grakn.ai</organizationUrl>
        </developer>
        <developer>
            <name>Ganeshwara Hewaran Hananda</name>
            <email>ganesh@grakn.ai</email>
            <organization>Grakn Labs</organization>
            <organizationUrl>http://grakn.ai</organizationUrl>
        </developer>
        <developer>
            <name>Marco Scoppetta</name>
            <email>marco@grakn.ai</email>
            <organization>Grakn Labs</organization>
            <organizationUrl>http://grakn.ai</organizationUrl>
        </developer>
        <developer>
            <name>Kasper Piskorski</name>
            <email>kasper@grakn.ai</email>
            <organization>Grakn Labs</organization>
            <organizationUrl>http://grakn.ai</organizationUrl>
        </developer>
        <developer>
            <name>James Fletcher</name>
            <email>james@grakn.ai</email>
            <organization>Grakn Labs</organization>
            <organizationUrl>http://grakn.ai</organizationUrl>
        </developer>
        <developer>
            <name>Syed Irtaza Raza</name>
            <email>syed@grakn.ai</email>
            <organization>Grakn Labs</organization>
            <organizationUrl>http://grakn.ai</organizationUrl>
        </developer>
    </developers>

    <scm>
        <connection>scm:git:git://github.com/graknlabs/grakn.git</connection>
        <developerConnection>scm:git:ssh://github.com:graknlabs/grakn.git</developerConnection>
        <url>https://github.com/graknlabs/grakn/tree/master</url>
    </scm>

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>ai.grakn</groupId>
                <artifactId>grakn-core</artifactId>
                <version>1.3.0</version>
            </dependency>
            <dependency>
                <groupId>ai.grakn</groupId>
                <artifactId>grakn-kb</artifactId>
                <version>1.3.0</version>
                <exclusions>
                    <exclusion>
                        <artifactId>javax.servlet</artifactId>
                        <groupId>org.eclipse.jetty.orbit</groupId>
                    </exclusion>
                    <exclusion>
                        <artifactId>slf4j-api</artifactId>
                        <groupId>org.slf4j</groupId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>ai.grakn</groupId>
                <artifactId>grakn-graql</artifactId>
                <version>1.3.0</version>
                <exclusions>
                    <exclusion>
                        <artifactId>slf4j-api</artifactId>
                        <groupId>org.slf4j</groupId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>ai.grakn</groupId>
                <artifactId>grakn-factory</artifactId>
                <version>1.3.0</version>
                <exclusions>
                    <exclusion>
                        <groupId>org.eclipse.jetty.orbit</groupId>
                        <artifactId>javax.servlet</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>org.slf4j</groupId>
                        <artifactId>slf4j-log4j12</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>ch.qos.logback</groupId>
                        <artifactId>logback-classic</artifactId>
                    </exclusion>
                    <!--Excluded because we provide logback logger-->
                    <exclusion>
                        <groupId>org.slf4j</groupId>
                        <artifactId>slf4j-nop</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>ai.grakn</groupId>
                <artifactId>client-java</artifactId>
                <version>1.3.0</version>
                <exclusions>
                    <exclusion>
                        <groupId>org.slf4j</groupId>
                        <artifactId>slf4j-simple</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>ai.grakn</groupId>
                <artifactId>grakn-engine</artifactId>
                <version>1.3.0</version>
                <exclusions>
                    <exclusion>
                        <groupId>org.slf4j</groupId>
                        <artifactId>slf4j-log4j12</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>ai.grakn</groupId>
                <artifactId>grakn-graql-shell</artifactId>
                <version>1.3.0</version>
            </dependency>
            <dependency>
                <groupId>ai.grakn</groupId>
                <artifactId>migration-base</artifactId>
                <version>1.3.0</version>
            </dependency>
            <dependency>
                <groupId>ai.grakn</groupId>
                <artifactId>migration-sql</artifactId>
                <version>1.3.0</version>
            </dependency>
            <dependency>
                <groupId>ai.grakn</groupId>
                <artifactId>migration-xml</artifactId>
                <version>1.3.0</version>
            </dependency>
            <dependency>
                <groupId>ai.grakn</groupId>
                <artifactId>migration-csv</artifactId>
                <version>1.3.0</version>
            </dependency>
            <dependency>
                <groupId>ai.grakn</groupId>
                <artifactId>migration-json</artifactId>
                <version>1.3.0</version>
            </dependency>
            <dependency>
                <groupId>ai.grakn</groupId>
                <artifactId>migration-export</artifactId>
                <version>1.3.0</version>
            </dependency>

            <dependency>
                <groupId>org.apache.tinkerpop</groupId>
                <artifactId>gremlin-core</artifactId>
                <version>${tinkerpop.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>org.slf4j</groupId>
                        <artifactId>slf4j-log4j12</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>org.slf4j</groupId>
                        <artifactId>jcl-over-slf4j</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>org.apache.tinkerpop</groupId>
                <artifactId>tinkergraph-gremlin</artifactId>
                <version>${tinkerpop.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>org.slf4j</groupId>
                        <artifactId>slf4j-log4j12</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>org.apache.tinkerpop</groupId>
                <artifactId>spark-gremlin</artifactId>
                <version>${spark-gremlin.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>com.fasterxml.jackson.module</groupId>
                        <artifactId>jackson-module-scala_2.10</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>javax.servlet</groupId>
                        <artifactId>javax.servlet-api</artifactId>
                    </exclusion>
                    <exclusion>
                        <artifactId>jackson-annotations</artifactId>
                        <groupId>com.fasterxml.jackson.core</groupId>
                    </exclusion>
                    <exclusion>
                        <artifactId>jackson-core</artifactId>
                        <groupId>com.fasterxml.jackson.core</groupId>
                    </exclusion>
                    <exclusion>
                        <groupId>com.fasterxml.jackson.core</groupId>
                        <artifactId>jackson-databind</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>io.dropwizard.metrics</groupId>
                        <artifactId>metrics-core</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>org.apache.tinkerpop</groupId>
                <artifactId>hadoop-gremlin</artifactId>
                <version>${spark-gremlin.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>javax.servlet</groupId>
                        <artifactId>javax.servlet-api</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>com.fasterxml.jackson.core</groupId>
                        <artifactId>jackson-core</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>com.fasterxml.jackson.core</groupId>
                        <artifactId>jackson-databind</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>org.apache.spark</groupId>
                        <artifactId>spark-core_2.10</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>javax.servlet</groupId>
                        <artifactId>javax.servlet-api</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>org.slf4j</groupId>
                        <artifactId>slf4j-log4j12</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>org.slf4j</groupId>
                        <artifactId>jcl-over-slf4j</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>log4j</groupId>
                        <artifactId>log4j</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>com.sun.jersey</groupId>
                        <artifactId>jersey-client</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>org.mortbay.jetty</groupId>
                        <artifactId>jetty-util</artifactId>
                    </exclusion>
                    <!--Need to add a jcl-over-slf4j bridge after excluding commons-logging-->
                    <exclusion>
                        <groupId>commons-logging</groupId>
                        <artifactId>commons-logging</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>org.slf4j</groupId>
                <artifactId>slf4j-api</artifactId>
                <version>${slf4j.version}</version>
            </dependency>
            <dependency>
                <groupId>org.slf4j</groupId>
                <artifactId>slf4j-simple</artifactId>
                <version>${slf4j.version}</version>
            </dependency>
            <dependency>
                <groupId>org.slf4j</groupId>
                <artifactId>jcl-over-slf4j</artifactId>
                <version>${slf4j.version}</version>
            </dependency>
            <dependency>
                <groupId>org.slf4j</groupId>
                <artifactId>log4j-over-slf4j</artifactId>
                <version>${slf4j.version}</version>
            </dependency>
            <dependency>
                <groupId>org.slf4j</groupId>
                <artifactId>slf4j-nop</artifactId>
                <version>${slf4j.version}</version>
            </dependency>
            <dependency>
                <groupId>ch.qos.logback</groupId>
                <artifactId>logback-core</artifactId>
                <version>${logback.version}</version>
            </dependency>
            <dependency>
                <groupId>ch.qos.logback</groupId>
                <artifactId>logback-classic</artifactId>
                <version>${logback.version}</version>
            </dependency>
            <dependency>
                <artifactId>httpclient</artifactId>
                <groupId>org.apache.httpcomponents</groupId>
                <version>${httpclient.version}</version>
            </dependency>
            <dependency>
                <groupId>io.reactivex</groupId>
                <artifactId>rxjava</artifactId>
                <version>${reactivex.version}</version>
            </dependency>
            <dependency>
                <groupId>org.sharegov</groupId>
                <artifactId>mjson</artifactId>
                <version>${mjson.version}</version>
            </dependency>
            <dependency>
                <groupId>org.antlr</groupId>
                <artifactId>antlr4-runtime</artifactId>
                <version>${antlr.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.commons</groupId>
                <artifactId>commons-csv</artifactId>
                <version>${csv.version}</version>
            </dependency>
            <dependency>
                <groupId>org.jooq</groupId>
                <artifactId>jooq</artifactId>
                <version>${jool.version}</version>
            </dependency>
            <dependency>
                <artifactId>jackson-databind</artifactId>
                <groupId>com.fasterxml.jackson.core</groupId>
                <version>${jackson.version}</version>
            </dependency>
            <dependency>
                <groupId>com.fasterxml.jackson.core</groupId>
                <artifactId>jackson-core</artifactId>
                <version>${jackson.version}</version>
            </dependency>
            <dependency>
                <groupId>com.fasterxml.jackson.dataformat</groupId>
                <artifactId>jackson-dataformat-yaml</artifactId>
                <version>${jackson.version}</version>
            </dependency>
            <dependency>
                <groupId>com.fasterxml.jackson.module</groupId>
                <artifactId>jackson-module-scala_2.10</artifactId>
                <version>${jackson.version}</version>
            </dependency>
            <dependency>
                <groupId>com.fasterxml.jackson.core</groupId>
                <artifactId>jackson-annotations</artifactId>
                <version>${jackson.version}</version>
            </dependency>
            <dependency>
                <groupId>org.janusgraph</groupId>
                <artifactId>janusgraph-cassandra</artifactId>
                <version>${janus.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>org.slf4j</groupId>
                        <artifactId>slf4j-log4j12</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>org.slf4j</groupId>
                        <artifactId>slf4j-api</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>javax.servlet</groupId>
                        <artifactId>javax.servlet-api</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>org.mortbay.jetty</groupId>
                        <artifactId>servlet-api</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>org.mortbay.jetty</groupId>
                        <artifactId>servlet-api-2.5</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>com.boundary</groupId>
                        <artifactId>high-scale-lib</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>ch.qos.logback</groupId>
                        <artifactId>logback-classic</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>org.apache.servicemix.bundles</groupId>
                        <artifactId>org.apache.servicemix.bundles.commons-csv</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>org.apache.spark</groupId>
                <artifactId>spark-core_2.10</artifactId>
                <version>${spark.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>com.fasterxml.jackson.module</groupId>
                        <artifactId>jackson-module-scala_2.10</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>javax.servlet</groupId>
                        <artifactId>javax.servlet-api</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>org.slf4j</groupId>
                        <artifactId>slf4j-log4j12</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>org.slf4j</groupId>
                        <artifactId>slf4j-api</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>org.slf4j</groupId>
                        <artifactId>jcl-over-slf4j</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>log4j</groupId>
                        <artifactId>log4j</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>io.dropwizard.metrics</groupId>
                        <artifactId>metrics-core</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>org.janusgraph</groupId>
                <artifactId>janusgraph-hadoop</artifactId>
                <version>${janus.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>com.fasterxml.jackson.module</groupId>
                        <artifactId>jackson-module-scala_2.10</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>org.slf4j</groupId>
                        <artifactId>slf4j-log4j12</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>org.slf4j</groupId>
                        <artifactId>slf4j-api</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>log4j</groupId>
                        <artifactId>log4j</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>org.apache.cassandra</groupId>
                <artifactId>cassandra-all</artifactId>
                <version>${cassandra-all.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>it.unimi.dsi</groupId>
                        <artifactId>fastutil</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>ch.qos.logback</groupId>
                        <artifactId>logback-core</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>ch.qos.logback</groupId>
                        <artifactId>logback-classic</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>com.google.cloud.bigtable</groupId>
                <artifactId>bigtable-hbase-1.0</artifactId>
                <version>${google-bigtable.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>org.apache.hadoop</groupId>
                        <artifactId>hadoop-common</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>org.apache.httpcomponents</groupId>
                        <artifactId>httpclient</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>com.datastax.cassandra</groupId>
                <artifactId>cassandra-driver-core</artifactId>
                <version>${cassandra-driver-core.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>io.dropwizard.metrics</groupId>
                        <artifactId>metrics-core</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>io.netty</groupId>
                        <artifactId>netty-handler</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>io.netty</groupId>
                <artifactId>netty-tcnative-boringssl-static</artifactId>
                <version>${netty.version}</version>
            </dependency>
            <dependency>
                <groupId>com.sparkjava</groupId>
                <artifactId>spark-core</artifactId>
                <version>${spark-core.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>org.slf4j</groupId>
                        <artifactId>slf4j-api</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>com.sun.jersey</groupId>
                <artifactId>jersey-client</artifactId>
                <version>${jersey.version}</version>
            </dependency>
            <dependency>
                <groupId>com.github.rholder</groupId>
                <artifactId>guava-retrying</artifactId>
                <version>${guava-retrying.version}</version>
            </dependency>
            <dependency>
                <groupId>com.netflix.hystrix</groupId>
                <artifactId>hystrix-core</artifactId>
                <version>${hystrix-core.version}</version>
            </dependency>
            <dependency>
                <groupId>io.dropwizard.metrics</groupId>
                <artifactId>metrics-core</artifactId>
                <version>${metrics.version}</version>
                <exclusions>
                    <exclusion>
                        <artifactId>slf4j-api</artifactId>
                        <groupId>org.slf4j</groupId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>io.dropwizard.metrics</groupId>
                <artifactId>metrics-servlets</artifactId>
                <version>${metrics.version}</version>
                <exclusions>
                    <exclusion>
                        <artifactId>jackson-databind</artifactId>
                        <groupId>com.fasterxml.jackson.core</groupId>
                    </exclusion>
                    <exclusion>
                        <artifactId>jackson-core</artifactId>
                        <groupId>com.fasterxml.jackson.core</groupId>
                    </exclusion>
                    <exclusion>
                        <artifactId>slf4j-api</artifactId>
                        <groupId>org.slf4j</groupId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>io.prometheus</groupId>
                <artifactId>simpleclient_servlet</artifactId>
                <version>${prometheus.version}</version>
            </dependency>
            <dependency>
                <groupId>io.prometheus</groupId>
                <artifactId>simpleclient_dropwizard</artifactId>
                <version>${prometheus.version}</version>
            </dependency>
            <dependency>
                <groupId>net.jodah</groupId>
                <artifactId>failsafe</artifactId>
                <version>${failsafe.version}</version>
            </dependency>
            <dependency>
                <groupId>ro.fortsoft.pf4j</groupId>
                <artifactId>pf4j</artifactId>
                <version>${pf4j.version}</version>
            </dependency>
            <dependency>
                <groupId>io.netty</groupId>
                <artifactId>netty-all</artifactId>
                <version>${netty-all.version}</version>
            </dependency>
            <dependency>
                <groupId>redis.clients</groupId>
                <artifactId>jedis</artifactId>
                <version>${redis.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.httpcomponents</groupId>
                <artifactId>httpcore</artifactId>
                <version>${apache-http-core.version}</version>
            </dependency>
            <dependency>
                <groupId>org.codehaus.janino</groupId>
                <artifactId>janino</artifactId>
                <version>${janino.version}</version>
            </dependency>
            <dependency>
                <groupId>io.airlift</groupId>
                <artifactId>airline</artifactId>
                <version>${airline.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>com.google.guava</groupId>
                        <artifactId>guava</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>jline</groupId>
                <artifactId>jline</artifactId>
                <version>${jline.version}</version>
            </dependency>
            <dependency>
                <groupId>commons-cli</groupId>
                <artifactId>commons-cli</artifactId>
                <version>${commons-cli.version}</version>
            </dependency>
            <dependency>
                <groupId>io.grpc</groupId>
                <artifactId>grpc-protobuf</artifactId>
                <version>${grpc.version}</version>
            </dependency>
            <dependency>
                <groupId>io.grpc</groupId>
                <artifactId>grpc-stub</artifactId>
                <version>${grpc.version}</version>
            </dependency>
            <dependency>
                <groupId>io.grpc</groupId>
                <artifactId>grpc-netty</artifactId>
                <version>${grpc.version}</version>
            </dependency>
            <dependency>
                <groupId>io.grpc</groupId>
                <artifactId>grpc-testing</artifactId>
                <version>${grpc.version}</version>
            </dependency>
            <dependency>
                <groupId>net.lingala.zip4j</groupId>
                <artifactId>zip4j</artifactId>
                <version>${zip4j.version}</version>
            </dependency>
            <dependency>
                <groupId>commons-collections</groupId>
                <artifactId>commons-collections</artifactId>
                <version>${commons-collections.version}</version>
            </dependency>
            <dependency>
                <groupId>com.h2database</groupId>
                <artifactId>h2</artifactId>
                <version>${h2-database.version}</version>
            </dependency>
            <dependency>
                <groupId>org.openjdk.jmh</groupId>
                <artifactId>jmh-generator-annprocess</artifactId>
                <version>${jmh-core.version}</version>
            </dependency>
            <dependency>
                <groupId>org.openjdk.jmh</groupId>
                <artifactId>jmh-core</artifactId>
                <version>${jmh-core.version}</version>
            </dependency>
            <dependency>
                <groupId>com.ldbc.driver</groupId>
                <artifactId>jeeves</artifactId>
                <version>${ldbc-driver.version}</version>
            </dependency>
            <dependency>
                <groupId>com.google.guava</groupId>
                <artifactId>guava</artifactId>
                <version>${guava.version}</version>
            </dependency>
            <dependency>
                <groupId>com.google.auto.value</groupId>
                <artifactId>auto-value</artifactId>
                <version>${auto-value.version}</version>
                <scope>provided</scope>
            </dependency>
            <dependency>
                <groupId>com.google.code.findbugs</groupId>
                <artifactId>annotations</artifactId>
                <version>${findbugs.version}</version>
                <scope>provided</scope>
            </dependency>

            <dependency>
                <groupId>ai.grakn</groupId>
                <artifactId>grakn-test-tools</artifactId>
                <version>1.3.0</version>
                <scope>test</scope>
            </dependency>

            <dependency>
                <groupId>ai.grakn</groupId>
                <artifactId>redis-mock</artifactId>
                <version>${redis-mock.version}</version>
                <scope>test</scope>
            </dependency>

            <dependency>
                <groupId>org.mockito</groupId>
                <artifactId>mockito-core</artifactId>
                <version>${mockito.version}</version>
                <scope>test</scope>
            </dependency>
            <dependency>
                <groupId>junit</groupId>
                <artifactId>junit</artifactId>
                <version>${junit.version}</version>
                <scope>test</scope>
            </dependency>
            <dependency>
                <groupId>org.hamcrest</groupId>
                <artifactId>hamcrest-all</artifactId>
                <version>${hamcrest.version}</version>
                <scope>test</scope>
            </dependency>
            <dependency>
                <groupId>com.pholser</groupId>
                <artifactId>junit-quickcheck-generators</artifactId>
                <version>${quickcheck.version}</version>
                <scope>test</scope>
            </dependency>
            <dependency>
                <groupId>com.github.kstyrc</groupId>
                <artifactId>embedded-redis</artifactId>
                <version>${redis-test.version}</version>
                <scope>test</scope>
            </dependency>
            <dependency>
                <groupId>org.cassandraunit</groupId>
                <artifactId>cassandra-unit</artifactId>
                <version>${cassandra-unit.version}</version>
                <scope>test</scope>
                <exclusions>
                    <exclusion>
                        <groupId>org.slf4j</groupId>
                        <artifactId>slf4j-api</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>com.jayway.restassured</groupId>
                <artifactId>rest-assured</artifactId>
                <version>${rest-assured.version}</version>
                <scope>test</scope>
            </dependency>
            <dependency>
                <groupId>com.github.stefanbirkner</groupId>
                <artifactId>system-rules</artifactId>
                <version>${systen-rules.version}</version>
                <scope>test</scope>
            </dependency>
            <dependency>
                <groupId>org.zeroturnaround</groupId>
                <artifactId>zt-exec</artifactId>
                <version>${zt-exec.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>commons-io</groupId>
                        <artifactId>commons-io</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
        </dependencies>
    </dependencyManagement>
    <dependencies>
        <dependency>
            <!-- SLF4J is the logging API all modules should use -->
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-api</artifactId>
        </dependency>
        <dependency>
            <groupId>ch.qos.logback</groupId>
            <artifactId>logback-core</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>ch.qos.logback</groupId>
            <artifactId>logback-classic</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

    <repositories>
        <!--Snapshot repository for 3rd party libraries -->
        <repository>
            <id>snapshots</id>
            <url>http://maven.grakn.ai/nexus/content/repositories/snapshots</url>
        </repository>
        <repository>
            <id>releases</id>
            <url>https://oss.sonatype.org/content/repositories/releases</url>
        </repository>
    </repositories>

    <build>
        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>templating-maven-plugin</artifactId>
                    <version>1.0.0</version>
                </plugin>
                <plugin>
                    <groupId>org.antlr</groupId>
                    <artifactId>antlr4-maven-plugin</artifactId>
                    <version>${antlr.version}</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-surefire-plugin</artifactId>
                    <version>2.19.1</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-failsafe-plugin</artifactId>
                    <version>2.19.1</version>
                </plugin>
                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>exec-maven-plugin</artifactId>
                    <version>1.5.0</version>
                </plugin>
                <plugin>
                    <groupId>org.eclipse.m2e</groupId>
                    <artifactId>lifecycle-mapping</artifactId>
                    <version>1.0.0</version>
                </plugin>
                <plugin>
                    <artifactId>maven-assembly-plugin</artifactId>
                    <version>2.6</version>
                </plugin>
                <plugin>
                    <groupId>com.googlecode.maven-download-plugin</groupId>
                    <artifactId>download-maven-plugin</artifactId>
                    <version>1.2.1</version>
                </plugin>
                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>license-maven-plugin</artifactId>
                    <version>1.16</version>
                    <executions>
                        <execution>
                            <id>download-licenses</id>
                            <goals>
                                <goal>download-licenses</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>
                <plugin>
                    <groupId>org.sonatype.plugins</groupId>
                    <artifactId>nexus-staging-maven-plugin</artifactId>
                    <version>1.6.7</version>
                </plugin>
            </plugins>
        </pluginManagement>

        <plugins>
            <plugin>
                <groupId>org.jacoco</groupId>
                <artifactId>jacoco-maven-plugin</artifactId>
                <version>0.7.6.201602180812</version>
                <executions>
                    <execution>
                        <id>prepare-agent</id>
                        <goals>
                            <goal>prepare-agent</goal>
                        </goals>
                    </execution>
                    <execution>
                        <id>report</id>
                        <phase>test</phase>
                        <goals>
                            <goal>report</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <excludes>
                        <exclude>**/antlr/**</exclude>
                    </excludes>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.5.1</version>
                <configuration>
                    <source>${java.version}</source>
                    <target>${java.version}</target>
                </configuration>
            </plugin>
            <plugin>
               <groupId>org.apache.maven.plugins</groupId>
               <artifactId>maven-source-plugin</artifactId>
               <version>2.2.1</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-javadoc-plugin</artifactId>
                <version>2.10.4</version>
                <configuration>
                    <!-- It makes the build succeed in case javadoc is not on path -->
                    <javadocExecutable>${java.home}/../bin/javadoc</javadocExecutable>
                    <additionalparam>-Xdoclint:none</additionalparam>
                    <header><![CDATA[<a href="https://grakn.ai" target="_top">Grakn</a>]]></header>
                    <bottom><![CDATA[Copyright &#169; {currentYear} <a href="https://grakn.ai" target="_top">Grakn Labs Ltd</a>. All rights reserved.]]></bottom>
                </configuration>
                <executions>
                    <execution>
                        <id>attach-javadocs</id>
                        <goals>
                            <goal>jar</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-failsafe-plugin</artifactId>
                <version>2.19.1</version>
                <configuration>
                    <systemProperties>
                        <logback.configurationFile>${main.basedir}/conf/test/logback-test.xml</logback.configurationFile>
                    </systemProperties>
                </configuration>
                <executions>
                    <execution>
                        <goals>
                            <goal>integration-test</goal>
                            <goal>verify</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <version>2.19.1</version>
                <configuration>
                    <systemProperties>
                        <logback.configurationFile>${main.basedir}/conf/test/logback-test.xml</logback.configurationFile>
                    </systemProperties>
                    <!-- Added this because of crash during build. We have tests that can't run concurrently. -->
                    <forkCount>1</forkCount>
                    <reuseForks>false</reuseForks>
                    <argLine>-Xmx1024m</argLine>
                    <!-- Added this config to try and help sort out flaky tests -->
                    <runOrder>random</runOrder>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-checkstyle-plugin</artifactId>
                <version>3.0.0</version>
                <executions>
                    <execution>
                        <id>validate</id>
                        <phase>validate</phase>
                        <configuration>
                            <configLocation>build/checkstyle/checkstyle.xml</configLocation>
                            <suppressionsLocation>build/checkstyle/checkstyle-suppressions.xml</suppressionsLocation>
                            <consoleOutput>true</consoleOutput>
                            <failsOnError>true</failsOnError>
                        </configuration>
                        <goals>
                            <goal>check</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>findbugs-maven-plugin</artifactId>
                <version>3.0.4</version>
                <configuration>
                    <excludeFilterFile>build/findbugs/findbugs-exclude.xml</excludeFilterFile>
                    <effort>Max</effort>
                    <threshold>Low</threshold>
                </configuration>
                <executions>
                    <execution>
                        <goals>
                            <goal>check</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <!--
                PMD prints warnings for a few files. This is because
                it cannot parse method references with generic parameters, such
                as `this::<Role>getType`.

                Any files containing these will not be checked for violations
                by PMD.
                -->
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-pmd-plugin</artifactId>
                <version>3.7</version>
                <configuration>
                    <verbose>true</verbose>
                    <excludes>
                        <!-- Skip generated classes, we only care about code we write -->
                        <exclude>**/ai/grakn/graql/internal/antlr/*.java</exclude>
                        <exclude>**/ai/grakn/rpc/proto/*.java</exclude>
                        <exclude>**/**AutoValue_**.java</exclude>

                        <!-- Following controllers contain duplicate annotations for documentation -->
                        <exclude>**/ai/grakn/engine/controller/GraqlController.java</exclude>
                        <exclude>**/ai/grakn/engine/controller/DashboardController.java</exclude>
                    </excludes>
                    <rulesets>
                        <ruleset>${user.dir}/build/pmd/pmd-rules.xml</ruleset>
                    </rulesets>
                </configuration>
                <executions>
                    <execution>
                        <goals>
                            <goal>check</goal>
                            <goal>cpd-check</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

    <profiles>
        <profile>
            <id>grakn-releases</id>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-javadoc-plugin</artifactId>
                        <version>2.9.1</version>
                        <configuration>
                            <javadocExecutable>${java.home}/../bin/javadoc</javadocExecutable>
                            <additionalparam>-Xdoclint:none</additionalparam>
                            <header><![CDATA[<a href="https://grakn.ai" target="_top">Grakn</a>]]></header>
                            <bottom><![CDATA[Copyright &#169; {currentYear} <a href="https://grakn.ai" target="_top">Grakn Labs Ltd</a>. All rights reserved.]]></bottom>
                        </configuration>
                        <executions>
                            <execution>
                                <id>attach-aggregate-javadocs</id>
                                <goals>
                                    <goal>aggregate-jar</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-gpg-plugin</artifactId>
                        <version>1.4</version>
                        <executions>
                            <execution>
                                <id>sign-artifacts</id>
                                <phase>verify</phase>
                                <goals>
                                    <goal>sign</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                    <plugin>
                        <groupId>org.sonatype.plugins</groupId>
                        <artifactId>nexus-staging-maven-plugin</artifactId>
                        <extensions>true</extensions>
                        <configuration>
                            <serverId>ossrh</serverId>
                            <nexusUrl>https://oss.sonatype.org/</nexusUrl>
                            <autoReleaseAfterClose>true</autoReleaseAfterClose>
                        </configuration>
                    </plugin>
                </plugins>
            </build>
            <distributionManagement>
                <snapshotRepository>
                    <id>ossrh</id>
                    <url>https://oss.sonatype.org/content/repositories/snapshots</url>
                </snapshotRepository>
                <repository>
                    <id>ossrh</id>
                    <url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
                </repository>
            </distributionManagement>
        </profile>
    </profiles>

</project>