1<?xml version="1.0" encoding="UTF-8"?> 2<!-- 3 Copyright 2012 Google LLC 4 5 Licensed under the Apache License, Version 2.0 (the "License"); 6 you may not use this file except in compliance with the License. 7 You may obtain a copy of the License at 8 9 http://www.apache.org/licenses/LICENSE-2.0 10 11 Unless required by applicable law or agreed to in writing, software 12 distributed under the License is distributed on an "AS IS" BASIS, 13 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 See the License for the specific language governing permissions and 15 limitations under the License. 16--> 17<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 18 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> 19 <modelVersion>4.0.0</modelVersion> 20 21 <parent> 22 <groupId>com.google.auto.value</groupId> 23 <artifactId>auto-value-parent</artifactId> 24 <version>1.7.4</version> 25 </parent> 26 27 <groupId>com.google.auto.value</groupId> 28 <artifactId>auto-value</artifactId> 29 <version>1.7.4</version> 30 <name>AutoValue Processor</name> 31 <description> 32 Immutable value-type code generation for Java 1.6+. 33 </description> 34 <url>https://github.com/google/auto/tree/master/value</url> 35 36 <scm> 37 <url>http://github.com/google/auto</url> 38 <connection>scm:git:git://github.com/google/auto.git</connection> 39 <developerConnection>scm:git:ssh://git@github.com/google/auto.git</developerConnection> 40 <tag>HEAD</tag> 41 </scm> 42 43 <properties> 44 <auto-service.version>1.0</auto-service.version> 45 <errorprone.version>2.7.1</errorprone.version> 46 </properties> 47 48 <dependencies> 49 <dependency> 50 <groupId>com.google.auto</groupId> 51 <artifactId>auto-common</artifactId> 52 <version>1.1</version> 53 </dependency> 54 <dependency> 55 <groupId>com.google.auto.service</groupId> 56 <artifactId>auto-service-annotations</artifactId> 57 <version>${auto-service.version}</version> 58 </dependency> 59 <dependency> 60 <groupId>com.google.errorprone</groupId> 61 <artifactId>error_prone_annotations</artifactId> 62 <version>${errorprone.version}</version> 63 </dependency> 64 <dependency> 65 <groupId>com.google.escapevelocity</groupId> 66 <artifactId>escapevelocity</artifactId> 67 <version>0.9.1</version> 68 </dependency> 69 <dependency> 70 <groupId>net.ltgt.gradle.incap</groupId> 71 <artifactId>incap</artifactId> 72 <version>0.3</version> 73 </dependency> 74 <dependency> 75 <groupId>com.google.guava</groupId> 76 <artifactId>guava</artifactId> 77 </dependency> 78 <dependency> 79 <groupId>com.squareup</groupId> 80 <artifactId>javapoet</artifactId> 81 </dependency> 82 <!-- test dependencies --> 83 <dependency> 84 <groupId>com.google.auto.value</groupId> 85 <artifactId>auto-value-annotations</artifactId> 86 <version>${project.version}</version> 87 <scope>test</scope> 88 </dependency> 89 <dependency> 90 <groupId>com.google.errorprone</groupId> 91 <artifactId>error_prone_type_annotations</artifactId> 92 <version>${errorprone.version}</version> 93 <scope>test</scope> 94 </dependency> 95 <dependency> 96 <groupId>org.apache.velocity</groupId> 97 <artifactId>velocity</artifactId> 98 <scope>test</scope> 99 </dependency> 100 <dependency> 101 <groupId>com.google.guava</groupId> 102 <artifactId>guava-testlib</artifactId> 103 <scope>test</scope> 104 </dependency> 105 <dependency> 106 <groupId>junit</groupId> 107 <artifactId>junit</artifactId> 108 <scope>test</scope> 109 </dependency> 110 <dependency> 111 <groupId>com.google.truth</groupId> 112 <artifactId>truth</artifactId> 113 <scope>test</scope> 114 </dependency> 115 <dependency> 116 <groupId>com.google.truth.extensions</groupId> 117 <artifactId>truth-java8-extension</artifactId> 118 <scope>test</scope> 119 </dependency> 120 <dependency> 121 <groupId>com.google.testing.compile</groupId> 122 <artifactId>compile-testing</artifactId> 123 <scope>test</scope> 124 </dependency> 125 <dependency> 126 <groupId>org.mockito</groupId> 127 <artifactId>mockito-core</artifactId> 128 <version>3.11.2</version> 129 <scope>test</scope> 130 </dependency> 131 </dependencies> 132 133 <build> 134 <sourceDirectory>../src/main/java</sourceDirectory> 135 <testSourceDirectory>../src/test/java</testSourceDirectory> 136 137 <resources> 138 <resource> 139 <directory>../src/main/java</directory> 140 <includes> 141 <include>**/*.vm</include> 142 </includes> 143 </resource> 144 </resources> 145 <plugins> 146 <plugin> 147 <groupId>org.apache.maven.plugins</groupId> 148 <artifactId>maven-compiler-plugin</artifactId> 149 <configuration> 150 <includes> 151 <include>com/google/auto/value/processor/**/*.java</include> 152 <include>com/google/auto/value/extension/memoized/processor/**/*.java</include> 153 <include>com/google/auto/value/extension/serializable/processor/**/*.java</include> 154 <include>com/google/auto/value/extension/serializable/serializer/**/*.java</include> 155 <include>com/google/auto/value/extension/toprettystring/processor/**/*.java</include> 156 </includes> 157 <compilerArgs> 158 <!-- This is something of a hack to allow tests to pass. Ideally we would build 159 TestStringSerializerFactory as a separate artifact, to avoid a problem when it 160 is built at the same time as @AutoValue classes that might end up finding it. 161 But by allowing a missing class to be ignored, we avoid crashing if there is a 162 META-INF/services entry for a class that the compiler has not yet generated. --> 163 <arg>-AallowedMissingSerializableExtensionClasses=.*TestStringSerializerFactory</arg> 164 </compilerArgs> 165 <annotationProcessorPaths> 166 <path> 167 <groupId>com.google.auto.service</groupId> 168 <artifactId>auto-service</artifactId> 169 <version>${auto-service.version}</version> 170 </path> 171 <path> 172 <groupId>net.ltgt.gradle.incap</groupId> 173 <artifactId>incap-processor</artifactId> 174 <version>0.3</version> 175 </path> 176 </annotationProcessorPaths> 177 </configuration> 178 <executions> 179 <execution> 180 <id>default-testCompile</id> 181 <configuration> 182 <annotationProcessorPaths> 183 <path> 184 <groupId>com.google.auto.value</groupId> 185 <artifactId>auto-value</artifactId> 186 <version>${project.version}</version> 187 </path> 188 <path> 189 <groupId>com.google.auto.service</groupId> 190 <artifactId>auto-service</artifactId> 191 <version>${auto-service.version}</version> 192 </path> 193 </annotationProcessorPaths> 194 </configuration> 195 </execution> 196 </executions> 197 </plugin> 198 <plugin> 199 <groupId>org.apache.maven.plugins</groupId> 200 <artifactId>maven-surefire-plugin</artifactId> 201 <version>2.22.2</version> 202 <configuration> 203 <argLine>${test.jvm.flags}</argLine> 204 </configuration> 205 </plugin> 206 <plugin> 207 <groupId>org.apache.maven.plugins</groupId> 208 <artifactId>maven-jar-plugin</artifactId> 209 </plugin> 210 <plugin> 211 <groupId>org.apache.maven.plugins</groupId> 212 <artifactId>maven-invoker-plugin</artifactId> 213 </plugin> 214 <plugin> 215 <groupId>org.immutables.tools</groupId> 216 <artifactId>maven-shade-plugin</artifactId> 217 <executions> 218 <execution> 219 <phase>package</phase> 220 <goals> 221 <goal>shade</goal> 222 </goals> 223 <configuration> 224 <minimizeJar>true</minimizeJar> 225 <artifactSet> 226 <excludes> 227 <exclude>com.google.code.findbugs:jsr305</exclude> 228 </excludes> 229 </artifactSet> 230 <relocations> 231 <relocation> 232 <pattern>org.objectweb</pattern> 233 <shadedPattern>autovalue.shaded.org.objectweb$</shadedPattern> 234 </relocation> 235 <relocation> 236 <pattern>com.google</pattern> 237 <shadedPattern>autovalue.shaded.com.google$</shadedPattern> 238 <excludes> 239 <exclude>com.google.auto.value.**</exclude> 240 </excludes> 241 </relocation> 242 <relocation> 243 <pattern>com.squareup.javapoet</pattern> 244 <shadedPattern>autovalue.shaded.com.squareup.javapoet$</shadedPattern> 245 </relocation> 246 <relocation> 247 <pattern>net.ltgt.gradle.incap</pattern> 248 <shadedPattern>autovalue.shaded.net.ltgt.gradle.incap$</shadedPattern> 249 </relocation> 250 <relocation> 251 <pattern>org.checkerframework</pattern> 252 <shadedPattern>autovalue.shaded.org.checkerframework$</shadedPattern> 253 </relocation> 254 </relocations> 255 </configuration> 256 </execution> 257 </executions> 258 </plugin> 259 </plugins> 260 </build> 261 <profiles> 262 <profile> 263 <id>disable-java8-doclint</id> 264 <activation> 265 <jdk>[1.8,)</jdk> 266 </activation> 267 <properties> 268 <additionalparam>-Xdoclint:none</additionalparam> 269 </properties> 270 </profile> 271 <profile> 272 <id>open-modules</id> 273 <activation> 274 <jdk>[9,)</jdk> 275 </activation> 276 <properties> 277 <test.jvm.flags>--add-opens=jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED</test.jvm.flags> 278 </properties> 279 </profile> 280 </profiles> 281</project> 282