1<?xml version="1.0" encoding="UTF-8"?> 2<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 3 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> 4 <modelVersion>4.0.0</modelVersion> 5 <parent> 6 <groupId>com.google.guava</groupId> 7 <artifactId>guava-parent</artifactId> 8 <version>26.0-android</version> 9 </parent> 10 <artifactId>listenablefuture</artifactId> 11 <version>9999.0-empty-to-avoid-conflict-with-guava</version> 12 <name>Guava ListenableFuture only</name> 13 <description> 14 An empty artifact that Guava depends on to signal that it is providing 15 ListenableFuture -- but is also available in a second "version" that 16 contains com.google.common.util.concurrent.ListenableFuture class, without 17 any other Guava classes. The idea is: 18 19 - If users want only ListenableFuture, they depend on listenablefuture-1.0. 20 21 - If users want all of Guava, they depend on guava, which, as of Guava 22 27.0, depends on 23 listenablefuture-9999.0-empty-to-avoid-conflict-with-guava. The 9999.0-... 24 version number is enough for some build systems (notably, Gradle) to select 25 that empty artifact over the "real" listenablefuture-1.0 -- avoiding a 26 conflict with the copy of ListenableFuture in guava itself. If users are 27 using an older version of Guava or a build system other than Gradle, they 28 may see class conflicts. If so, they can solve them by manually excluding 29 the listenablefuture artifact or manually forcing their build systems to 30 use 9999.0-.... 31 </description> 32 <build> 33 <plugins> 34 <plugin> 35 <artifactId>maven-source-plugin</artifactId> 36 </plugin> 37 <plugin> 38 <groupId>org.codehaus.mojo</groupId> 39 <artifactId>animal-sniffer-maven-plugin</artifactId> 40 </plugin> 41 <plugin> 42 <artifactId>maven-javadoc-plugin</artifactId> 43 <executions> 44 <execution> 45 <id>attach-docs</id> 46 </execution> 47 <execution> 48 <id>generate-javadoc-site-report</id> 49 <phase>site</phase> 50 <goals><goal>javadoc</goal></goals> 51 </execution> 52 </executions> 53 </plugin> 54 </plugins> 55 </build> 56</project> 57