<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>

    <parent>
        <groupId>io.airlift</groupId>
        <artifactId>airbase</artifactId>
        <version>46</version>
    </parent>

    <groupId>io.airlift.resolver</groupId>
    <artifactId>resolver-root</artifactId>
    <version>1.4</version>
    <packaging>pom</packaging>

    <description>Resolve the dependencies of Maven coordinates or POM file</description>
    <name>${project.artifactId}</name>
    <inceptionYear>2013</inceptionYear>

    <scm>
        <connection>scm:git:git://github.com/airlift/resolver.git</connection>
        <url>https://github.com/airlift/resolver</url>
        <tag>1.4</tag>
    </scm>

    <properties>
        <dep.aether.version>1.13.1</dep.aether.version>
        <dep.maven.version>3.0.4</dep.maven.version>

        <air.check.skip-extended>true</air.check.skip-extended>
    </properties>

    <modules>
        <module>resolver</module>
        <module>resolver-integration</module>
    </modules>

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>io.airlift.resolver</groupId>
                <artifactId>resolver</artifactId>
                <version>${project.version}</version>
            </dependency>

            <dependency>
                <groupId>org.sonatype.aether</groupId>
                <artifactId>aether-spi</artifactId>
                <version>${dep.aether.version}</version>
            </dependency>

            <dependency>
                <groupId>org.sonatype.aether</groupId>
                <artifactId>aether-api</artifactId>
                <version>${dep.aether.version}</version>
            </dependency>

            <dependency>
                <groupId>org.sonatype.aether</groupId>
                <artifactId>aether-impl</artifactId>
                <version>${dep.aether.version}</version>
            </dependency>

            <dependency>
                <groupId>org.sonatype.aether</groupId>
                <artifactId>aether-util</artifactId>
                <version>${dep.aether.version}</version>
            </dependency>

            <dependency>
                <groupId>org.sonatype.aether</groupId>
                <artifactId>aether-connector-file</artifactId>
                <version>${dep.aether.version}</version>
            </dependency>

            <dependency>
                <groupId>org.sonatype.aether</groupId>
                <artifactId>aether-connector-asynchttpclient</artifactId>
                <version>${dep.aether.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>org.jboss.netty</groupId>
                        <artifactId>netty</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>

            <dependency>
                <groupId>io.netty</groupId>
                <artifactId>netty</artifactId>
                <version>3.6.2.Final</version>
            </dependency>

            <dependency>
                <groupId>org.apache.maven</groupId>
                <artifactId>maven-core</artifactId>
                <version>${dep.maven.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>org.sonatype.sisu</groupId>
                        <artifactId>sisu-inject-plexus</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>

            <dependency>
                <groupId>org.apache.maven</groupId>
                <artifactId>maven-model</artifactId>
                <version>${dep.maven.version}</version>
            </dependency>

            <dependency>
                <groupId>org.apache.maven</groupId>
                <artifactId>maven-artifact</artifactId>
                <version>${dep.maven.version}</version>
            </dependency>

            <dependency>
                <groupId>org.apache.maven</groupId>
                <artifactId>maven-aether-provider</artifactId>
                <version>${dep.maven.version}</version>
            </dependency>

            <dependency>
                <groupId>org.apache.maven</groupId>
                <artifactId>maven-embedder</artifactId>
                <version>${dep.maven.version}</version>
                <exclusions>
                    <exclusion>
                        <groupId>org.sonatype.sisu</groupId>
                        <artifactId>sisu-inject-plexus</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>commons-cli</groupId>
                        <artifactId>commons-cli</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>

            <dependency>
                <groupId>org.codehaus.plexus</groupId>
                <artifactId>plexus-container-default</artifactId>
                <version>1.5.5</version>
                <exclusions>
                    <exclusion>
                        <groupId>commons-logging</groupId>
                        <artifactId>commons-logging-api</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>com.google.collections</groupId>
                        <artifactId>google-collections</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>junit</groupId>
                        <artifactId>junit</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>log4j</groupId>
                        <artifactId>log4j</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>

            <dependency>
                <groupId>org.codehaus.plexus</groupId>
                <artifactId>plexus-classworlds</artifactId>
                <version>2.4</version>
            </dependency>
        </dependencies>
    </dependencyManagement>

    <build>
        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>com.ning.maven.plugins</groupId>
                    <artifactId>maven-duplicate-finder-plugin</artifactId>
                    <configuration>
                        <exceptions combine.children="append">
                            <exception>
                                <conflictingDependencies>
                                    <dependency>
                                        <groupId>aopalliance</groupId>
                                        <artifactId>aopalliance</artifactId>
                                    </dependency>
                                    <dependency>
                                        <groupId>org.sonatype.sisu</groupId>
                                        <artifactId>sisu-inject-bean</artifactId>
                                    </dependency>
                                </conflictingDependencies>
                                <classes>
                                    <class>org.aopalliance.aop.Advice</class>
                                    <class>org.aopalliance.aop.AspectException</class>
                                    <class>org.aopalliance.intercept.ConstructorInterceptor</class>
                                    <class>org.aopalliance.intercept.ConstructorInvocation</class>
                                    <class>org.aopalliance.intercept.Interceptor</class>
                                    <class>org.aopalliance.intercept.Invocation</class>
                                    <class>org.aopalliance.intercept.Joinpoint</class>
                                    <class>org.aopalliance.intercept.MethodInterceptor</class>
                                    <class>org.aopalliance.intercept.MethodInvocation</class>
                                </classes>
                            </exception>
                            <exception>
                                <conflictingDependencies>
                                    <dependency>
                                        <groupId>javax.inject</groupId>
                                        <artifactId>javax.inject</artifactId>
                                    </dependency>
                                    <dependency>
                                        <groupId>org.sonatype.sisu</groupId>
                                        <artifactId>sisu-inject-bean</artifactId>
                                    </dependency>
                                </conflictingDependencies>
                                <classes>
                                    <class>javax.inject.Inject</class>
                                    <class>javax.inject.Named</class>
                                    <class>javax.inject.Provider</class>
                                    <class>javax.inject.Qualifier</class>
                                    <class>javax.inject.Scope</class>
                                    <class>javax.inject.Singleton</class>
                                </classes>
                            </exception>
                        </exceptions>
                    </configuration>
                </plugin>
            </plugins>
        </pluginManagement>
    </build>
</project>
