1<?xml version="1.0" encoding="UTF-8"?> 2<!-- 3 ~ Copyright 2013 Google Inc. 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 18<project xmlns="http://maven.apache.org/POM/4.0.0" 19 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 20 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 21 <modelVersion>4.0.0</modelVersion> 22 23 <groupId>com.google.jimfs</groupId> 24 <artifactId>jimfs-parent</artifactId> 25 <packaging>pom</packaging> 26 <version>HEAD-SNAPSHOT</version> 27 28 <modules> 29 <module>jimfs</module> 30 </modules> 31 32 <name>Jimfs Parent</name> 33 34 <description> 35 Jimfs is an in-memory implementation of Java 7's java.nio.file abstract file system API. 36 </description> 37 38 <url>https://github.com/google/jimfs</url> 39 40 <inceptionYear>2013</inceptionYear> 41 42 <organization> 43 <name>Google Inc.</name> 44 <url>http://www.google.com/</url> 45 </organization> 46 47 <licenses> 48 <license> 49 <name>The Apache Software License, Version 2.0</name> 50 <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url> 51 <distribution>repo</distribution> 52 </license> 53 </licenses> 54 55 <developers> 56 <developer> 57 <id>cgdecker</id> 58 <name>Colin Decker</name> 59 <email>[email protected]</email> 60 <organization>Google Inc.</organization> 61 <organizationUrl>http://www.google.com/</organizationUrl> 62 <roles> 63 <role>owner</role> 64 <role>developer</role> 65 </roles> 66 <timezone>-5</timezone> 67 </developer> 68 </developers> 69 70 <scm> 71 <url>http://github.com/google/jimfs/</url> 72 <connection>scm:git:git://github.com/google/jimfs.git</connection> 73 <developerConnection>scm:git:ssh://[email protected]/google/jimfs.git</developerConnection> 74 <tag>HEAD</tag> 75 </scm> 76 77 <issueManagement> 78 <system>GitHub Issues</system> 79 <url>http://github.com/google/jimfs/issues</url> 80 </issueManagement> 81 82 <distributionManagement> 83 <snapshotRepository> 84 <id>sonatype-nexus-snapshots</id> 85 <name>Sonatype Nexus Snapshots</name> 86 <url>https://oss.sonatype.org/content/repositories/snapshots/</url> 87 </snapshotRepository> 88 <repository> 89 <id>sonatype-nexus-staging</id> 90 <name>Nexus Release Repository</name> 91 <url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url> 92 </repository> 93 </distributionManagement> 94 95 <properties> 96 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 97 <auto-service.version>1.0-rc7</auto-service.version> 98 <java.version>1.7</java.version> 99 <guava.version>30.1-android</guava.version> 100 <!-- 101 NOTE: When updating errorprone.version, also update javac.version to the 102 version used by the new error-prone version. You should be able to find 103 it in the properties section of 104 https://github.com/google/error-prone/blob/v${errorprone.version}/pom.xml 105 --> 106 <errorprone.version>2.4.0</errorprone.version> 107 <javac.version>9+181-r4173-1</javac.version> 108 </properties> 109 110 <dependencyManagement> 111 <dependencies> 112 <!-- Required runtime dependencies --> 113 <dependency> 114 <groupId>com.google.guava</groupId> 115 <artifactId>guava</artifactId> 116 <version>${guava.version}</version> 117 </dependency> 118 119 <!-- Optional runtime dependencies --> 120 <dependency> 121 <groupId>com.ibm.icu</groupId> 122 <artifactId>icu4j</artifactId> 123 <version>68.2</version> 124 </dependency> 125 126 <!-- Compile-time dependencies --> 127 <dependency> 128 <groupId>com.google.auto.service</groupId> 129 <artifactId>auto-service-annotations</artifactId> 130 <version>${auto-service.version}</version> 131 </dependency> 132 <dependency> 133 <groupId>com.google.code.findbugs</groupId> 134 <artifactId>jsr305</artifactId> 135 <version>3.0.2</version> 136 </dependency> 137 <dependency> 138 <groupId>org.checkerframework</groupId> 139 <artifactId>checker-compat-qual</artifactId> 140 <version>2.5.5</version> 141 </dependency> 142 143 <!-- Test dependencies --> 144 <dependency> 145 <groupId>junit</groupId> 146 <artifactId>junit</artifactId> 147 <version>4.13.1</version> 148 <scope>test</scope> 149 </dependency> 150 <dependency> 151 <groupId>com.google.guava</groupId> 152 <artifactId>guava-testlib</artifactId> 153 <version>${guava.version}</version> 154 <scope>test</scope> 155 </dependency> 156 <dependency> 157 <groupId>com.google.truth</groupId> 158 <artifactId>truth</artifactId> 159 <version>1.1</version> 160 <scope>test</scope> 161 </dependency> 162 </dependencies> 163 </dependencyManagement> 164 165 <build> 166 <pluginManagement> 167 <plugins> 168 <plugin> 169 <artifactId>maven-compiler-plugin</artifactId> 170 <version>3.8.1</version> 171 </plugin> 172 <plugin> 173 <artifactId>maven-source-plugin</artifactId> 174 <version>3.2.1</version> 175 </plugin> 176 <plugin> 177 <artifactId>maven-javadoc-plugin</artifactId> 178 <version>3.2.0</version> 179 <configuration> 180 <debug>true</debug> 181 <encoding>UTF-8</encoding> 182 <docencoding>UTF-8</docencoding> 183 <charset>UTF-8</charset> 184 <detectJavaApiLink>false</detectJavaApiLink> 185 <links> 186 <link>https://checkerframework.org/api/</link> 187 <link>https://guava.dev/releases/${guava.version}/api/docs/</link> 188 <link>https://unicode-org.github.io/icu-docs/apidoc/released/icu4j</link> 189 <!-- When building against Java 8, the Java 11 link below is overridden to point to an older version (Java 9, the newest one that works). --> 190 <link>https://docs.oracle.com/en/java/javase/11/docs/api/</link> 191 </links> 192 </configuration> 193 </plugin> 194 <plugin> 195 <artifactId>maven-gpg-plugin</artifactId> 196 <version>1.6</version> 197 </plugin> 198 <plugin> 199 <artifactId>maven-surefire-plugin</artifactId> 200 <version>3.0.0-M5</version> 201 </plugin> 202 <plugin> 203 <groupId>org.apache.felix</groupId> 204 <artifactId>maven-bundle-plugin</artifactId> 205 <version>5.1.1</version> 206 </plugin> 207 </plugins> 208 </pluginManagement> 209 210 <plugins> 211 <plugin> 212 <artifactId>maven-compiler-plugin</artifactId> 213 <configuration> 214 <source>${java.version}</source> 215 <target>${java.version}</target> 216 <compilerArgs> 217 <arg>-XDcompilePolicy=simple</arg> 218 <arg>-Xplugin:ErrorProne</arg> 219 </compilerArgs> 220 <annotationProcessorPaths> 221 <path> 222 <groupId>com.google.errorprone</groupId> 223 <artifactId>error_prone_core</artifactId> 224 <version>${errorprone.version}</version> 225 </path> 226 <path> 227 <groupId>com.google.guava</groupId> 228 <artifactId>guava-beta-checker</artifactId> 229 <version>1.0</version> 230 </path> 231 <path> 232 <groupId>com.google.auto.service</groupId> 233 <artifactId>auto-service</artifactId> 234 <version>${auto-service.version}</version> 235 </path> 236 </annotationProcessorPaths> 237 </configuration> 238 <executions> 239 <execution> 240 <id>default-testCompile</id> 241 <phase>test-compile</phase> 242 <goals> 243 <goal>testCompile</goal> 244 </goals> 245 <configuration> 246 <compilerArgs> 247 <arg>-XDcompilePolicy=simple</arg> 248 <arg>-Xplugin:ErrorProne -Xep:BetaApi:OFF</arg> <!-- Disable Beta Checker for tests --> 249 </compilerArgs> 250 </configuration> 251 </execution> 252 </executions> 253 </plugin> 254 </plugins> 255 </build> 256 257 <profiles> 258 <profile> 259 <id>jdk8plus</id> 260 <activation> 261 <jdk>[1.8,)</jdk> 262 </activation> 263 <!-- Disable HTML checking in doclint under JDK 8 and higher --> 264 <reporting> 265 <plugins> 266 <plugin> 267 <artifactId>maven-javadoc-plugin</artifactId> 268 <configuration> 269 <additionalOptions> 270 <additionalOption>-Xdoclint:none</additionalOption> 271 </additionalOptions> 272 </configuration> 273 </plugin> 274 </plugins> 275 </reporting> 276 <build> 277 <plugins> 278 <plugin> 279 <artifactId>maven-javadoc-plugin</artifactId> 280 <configuration> 281 <additionalOptions> 282 <additionalOption>-Xdoclint:none</additionalOption> 283 </additionalOptions> 284 </configuration> 285 </plugin> 286 </plugins> 287 </build> 288 </profile> 289 290 <!-- https://errorprone.info/docs/installation#maven --> 291 <!-- using github.com/google/error-prone-javac is required when running on JDK 8 --> 292 <profile> 293 <id>jdk8exactly</id> 294 <activation> 295 <jdk>1.8</jdk> 296 </activation> 297 <reporting> 298 <plugins> 299 <plugin> 300 <artifactId>maven-javadoc-plugin</artifactId> 301 <configuration> 302 <links> 303 <link>https://checkerframework.org/api/</link> 304 <link>https://guava.dev/releases/${guava.version}/api/docs/</link> 305 <link>https://unicode-org.github.io/icu-docs/apidoc/released/icu4j</link> 306 <link>https://docs.oracle.com/javase/9/docs/api/</link> 307 </links> 308 </configuration> 309 </plugin> 310 </plugins> 311 </reporting> 312 <build> 313 <plugins> 314 <!-- https://errorprone.info/docs/installation#maven --> 315 <!-- using github.com/google/error-prone-javac is required when running on JDK 8 --> 316 <plugin> 317 <groupId>org.apache.maven.plugins</groupId> 318 <artifactId>maven-compiler-plugin</artifactId> 319 <configuration> 320 <fork>true</fork> 321 <compilerArgs combine.children="append"> 322 <arg>-J-Xbootclasspath/p:${settings.localRepository}/com/google/errorprone/javac/${javac.version}/javac-${javac.version}.jar</arg> 323 </compilerArgs> 324 </configuration> 325 </plugin> 326 327 <plugin> 328 <artifactId>maven-javadoc-plugin</artifactId> 329 <configuration> 330 <links> 331 <link>https://checkerframework.org/api/</link> 332 <link>https://guava.dev/releases/${guava.version}/api/docs/</link> 333 <link>https://unicode-org.github.io/icu-docs/apidoc/released/icu4j</link> 334 <link>https://docs.oracle.com/javase/9/docs/api/</link> 335 </links> 336 </configuration> 337 </plugin> 338 </plugins> 339 </build> 340 </profile> 341 <profile> 342 <id>sonatype-oss-release</id> 343 <build> 344 <plugins> 345 <plugin> 346 <groupId>org.apache.maven.plugins</groupId> 347 <artifactId>maven-source-plugin</artifactId> 348 <executions> 349 <execution> 350 <id>attach-sources</id> 351 <goals> 352 <goal>jar-no-fork</goal> 353 </goals> 354 </execution> 355 </executions> 356 </plugin> 357 <plugin> 358 <groupId>org.apache.maven.plugins</groupId> 359 <artifactId>maven-javadoc-plugin</artifactId> 360 <executions> 361 <execution> 362 <id>attach-javadocs</id> 363 <goals> 364 <goal>jar</goal> 365 </goals> 366 </execution> 367 </executions> 368 </plugin> 369 <plugin> 370 <groupId>org.apache.maven.plugins</groupId> 371 <artifactId>maven-gpg-plugin</artifactId> 372 <executions> 373 <execution> 374 <id>sign-artifacts</id> 375 <phase>verify</phase> 376 <goals> 377 <goal>sign</goal> 378 </goals> 379 </execution> 380 </executions> 381 </plugin> 382 </plugins> 383 </build> 384 </profile> 385 </profiles> 386 387</project> 388