<?xml version="1.0" encoding="UTF-8"?>
|
<!--
|
Copyright (C) 2012 Square, Inc.
|
Copyright (C) 2012 Google, Inc.
|
|
Licensed 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>com.google.dagger</groupId>
|
<artifactId>dagger-parent</artifactId>
|
<version>2.1-SNAPSHOT</version>
|
</parent>
|
|
<artifactId>dagger-compiler</artifactId>
|
<name>Dagger Compiler</name>
|
<description>
|
Tools to generate Dagger injection and module adapters from annotated code and validate them.
|
</description>
|
|
<dependencies>
|
<dependency>
|
<groupId>${project.groupId}</groupId>
|
<artifactId>dagger</artifactId>
|
<version>${project.version}</version>
|
</dependency>
|
<dependency>
|
<groupId>${project.groupId}</groupId>
|
<artifactId>dagger-producers</artifactId>
|
<version>${project.version}</version>
|
</dependency>
|
<dependency>
|
<groupId>com.google.auto</groupId>
|
<artifactId>auto-common</artifactId>
|
</dependency>
|
<dependency>
|
<groupId>com.google.guava</groupId>
|
<artifactId>guava</artifactId>
|
</dependency>
|
<dependency>
|
<groupId>com.google.code.findbugs</groupId>
|
<artifactId>jsr305</artifactId>
|
<optional>true</optional>
|
</dependency>
|
<dependency>
|
<groupId>com.google.googlejavaformat</groupId>
|
<artifactId>google-java-format</artifactId>
|
</dependency>
|
<dependency>
|
<groupId>com.google.auto.service</groupId>
|
<artifactId>auto-service</artifactId>
|
<scope>provided</scope> <!-- to leave out of the all-deps jar -->
|
</dependency>
|
<dependency>
|
<groupId>com.google.auto.value</groupId>
|
<artifactId>auto-value</artifactId>
|
<scope>provided</scope> <!-- to leave out of the all-deps jar -->
|
<version>1.0</version>
|
</dependency>
|
|
<dependency>
|
<groupId>junit</groupId>
|
<artifactId>junit</artifactId>
|
<scope>test</scope>
|
</dependency>
|
<dependency>
|
<groupId>${project.groupId}</groupId>
|
<artifactId>dagger</artifactId>
|
<version>${project.version}</version>
|
<scope>test</scope>
|
<classifier>tests</classifier>
|
</dependency>
|
<dependency>
|
<groupId>com.google.testing.compile</groupId>
|
<artifactId>compile-testing</artifactId>
|
<scope>test</scope>
|
</dependency>
|
<dependency>
|
<groupId>com.google.guava</groupId>
|
<artifactId>guava-testlib</artifactId>
|
<scope>test</scope>
|
</dependency>
|
<dependency>
|
<groupId>org.mockito</groupId>
|
<artifactId>mockito-core</artifactId>
|
<scope>test</scope>
|
</dependency>
|
<dependency>
|
<groupId>com.google.truth</groupId>
|
<artifactId>truth</artifactId>
|
<scope>test</scope>
|
</dependency>
|
</dependencies>
|
|
<build>
|
<plugins>
|
<plugin>
|
<artifactId>maven-compiler-plugin</artifactId>
|
<executions>
|
<execution>
|
<id>default-compile</id>
|
<goals><goal>compile</goal></goals>
|
<configuration>
|
<annotationProcessors>
|
<annotationProcessor>com.google.auto.value.processor.AutoValueProcessor</annotationProcessor>
|
<annotationProcessor>com.google.auto.service.processor.AutoServiceProcessor</annotationProcessor>
|
</annotationProcessors>
|
</configuration>
|
</execution>
|
<execution>
|
<id>default-test-compile</id>
|
<goals><goal>testCompile</goal></goals>
|
<configuration>
|
<annotationProcessors>
|
<annotationProcessor>dagger.internal.codegen.ComponentProcessor</annotationProcessor>
|
</annotationProcessors>
|
</configuration>
|
</execution>
|
</executions>
|
</plugin>
|
<plugin>
|
<artifactId>maven-invoker-plugin</artifactId>
|
<configuration>
|
<addTestClassPath>true</addTestClassPath>
|
<cloneProjectsTo>${project.build.directory}/it</cloneProjectsTo>
|
<cloneClean>true</cloneClean>
|
<profiles>
|
<profile>!sonatype-oss-release</profile>
|
</profiles>
|
<pomIncludes>
|
<pomInclude>*/pom.xml</pomInclude>
|
</pomIncludes>
|
<localRepositoryPath>${project.build.directory}/it-repo</localRepositoryPath>
|
<filterProperties>
|
<dagger.version>${project.version}</dagger.version>
|
<dagger.groupId>${project.groupId}</dagger.groupId>
|
</filterProperties>
|
<streamLogs>true</streamLogs>
|
</configuration>
|
<executions>
|
<execution>
|
<id>integration-test</id>
|
<goals>
|
<goal>install</goal>
|
<goal>run</goal>
|
</goals>
|
</execution>
|
</executions>
|
</plugin>
|
<plugin>
|
<artifactId>maven-shade-plugin</artifactId>
|
<version>2.3</version>
|
<executions>
|
<execution>
|
<phase>package</phase>
|
<goals>
|
<goal>shade</goal>
|
</goals>
|
<configuration>
|
<minimizeJar>true</minimizeJar>
|
<artifactSet>
|
<excludes>
|
<!-- guava which has a consistent API and whose public types we vend in producers -->
|
<exclude>com.google.guava</exclude>
|
<!-- annotation processors dagger uses to be built, not to operate -->
|
<exclude>com.google.auto.service</exclude>
|
<exclude>com.google.auto.value</exclude>
|
<!-- projects should depend on api projects directly -->
|
<exclude>com.google.dagger:dagger</exclude>
|
<exclude>com.google.dagger:dagger-producers</exclude>
|
<exclude>javax.inject</exclude>
|
</excludes>
|
</artifactSet>
|
<relocations>
|
<relocation>
|
<pattern>com.google.auto.common</pattern>
|
<shadedPattern>dagger.shaded.auto.common</shadedPattern>
|
</relocation>
|
</relocations>
|
<filters>
|
<filter>
|
<artifact>*:*</artifact>
|
<excludes>
|
<exclude>META-INF/*.SF</exclude>
|
<exclude>META-INF/*.DSA</exclude>
|
<exclude>META-INF/*.RSA</exclude>
|
</excludes>
|
</filter>
|
</filters>
|
</configuration>
|
</execution>
|
</executions>
|
</plugin>
|
</plugins>
|
</build>
|
</project>
|