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>19.0</version> 9 </parent> 10 <artifactId>guava</artifactId> 11 <packaging>bundle</packaging> 12 <name>Guava: Google Core Libraries for Java</name> 13 <description> 14 Guava is a suite of core and expanded libraries that include 15 utility classes, google's collections, io classes, and much 16 much more. 17 18 Guava has only one code dependency - javax.annotation, 19 per the JSR-305 spec. 20 </description> 21 <dependencies> 22 <dependency> 23 <groupId>com.google.code.findbugs</groupId> 24 <artifactId>jsr305</artifactId> 25 <optional>true</optional><!-- needed only for annotations --> 26 </dependency> 27 <dependency> 28 <groupId>com.google.errorprone</groupId> 29 <artifactId>error_prone_annotations</artifactId> 30 <optional>true</optional><!-- needed only for annotations --> 31 </dependency> 32 <dependency> 33 <groupId>com.google.j2objc</groupId> 34 <artifactId>j2objc-annotations</artifactId> 35 <optional>true</optional><!-- needed only for annotations --> 36 </dependency> 37 <dependency> 38 <groupId>org.codehaus.mojo</groupId> 39 <artifactId>animal-sniffer-annotations</artifactId> 40 <version>${animal.sniffer.version}</version> 41 <optional>true</optional><!-- needed only for annotations --> 42 </dependency> 43 <!-- TODO(cpovirk): does this comment belong on the <dependency> in <profiles>? --> 44 <!-- TODO(cpovirk): want this only for dependency plugin but seems not to work there? Maven runs without failure, but the resulting Javadoc is missing the hoped-for inherited text --> 45 </dependencies> 46 <build> 47 <plugins> 48 <plugin> 49 <extensions>true</extensions> 50 <groupId>org.apache.felix</groupId> 51 <artifactId>maven-bundle-plugin</artifactId> 52 <version>2.3.7</version> 53 <executions> 54 <execution> 55 <id>bundle-manifest</id> 56 <phase>process-classes</phase> 57 <goals> 58 <goal>manifest</goal> 59 </goals> 60 </execution> 61 </executions> 62 <configuration> 63 <instructions> 64 <Export-Package>!com.google.common.base.internal,com.google.common.*</Export-Package> 65 <Import-Package> 66 javax.annotation;resolution:=optional, 67 sun.misc.*;resolution:=optional 68 </Import-Package> 69 <Bundle-DocURL>https://guava-libraries.googlecode.com/</Bundle-DocURL> 70 </instructions> 71 </configuration> 72 </plugin> 73 <plugin> 74 <artifactId>maven-compiler-plugin</artifactId> 75 </plugin> 76 <plugin> 77 <artifactId>maven-source-plugin</artifactId> 78 </plugin> 79 <!-- TODO(cpovirk): include JDK sources when building testlib doc, too --> 80 <plugin> 81 <artifactId>maven-dependency-plugin</artifactId> 82 <executions> 83 <execution> 84 <id>unpack-jdk-sources</id> 85 <phase>site</phase> 86 <goals><goal>unpack-dependencies</goal></goals> 87 <configuration> 88 <includeArtifactIds>srczip</includeArtifactIds> 89 <outputDirectory>${project.build.directory}/jdk-sources</outputDirectory> 90 <silent>false</silent> 91 </configuration> 92 </execution> 93 </executions> 94 </plugin> 95 <plugin> 96 <groupId>org.codehaus.mojo</groupId> 97 <artifactId>animal-sniffer-maven-plugin</artifactId> 98 </plugin> 99 <plugin> 100 <groupId>org.apache.maven.plugins</groupId> 101 <artifactId>maven-javadoc-plugin</artifactId> 102 <configuration> 103 <encoding>UTF-8</encoding> 104 <docencoding>UTF-8</docencoding> 105 <charset>UTF-8</charset> 106 <additionalparam>-XDignore.symbol.file</additionalparam> 107 <excludePackageNames>com.google.common.base.internal</excludePackageNames> 108 <linksource>true</linksource> 109 <links> 110 <link>http://jsr-305.googlecode.com/svn/trunk/javadoc</link> 111 <link>http://docs.oracle.com/javase/7/docs/api/</link> 112 </links> 113 <!-- TODO(cpovirk): can we use includeDependencySources and a local com.oracle.java:jdk-lib:noversion:sources instead of all this unzipping and manual sourcepath modification? --> 114 <sourcepath>${project.build.sourceDirectory}:${project.build.directory}/jdk-sources</sourcepath> 115 <subpackages>com.google.common</subpackages> 116 </configuration> 117 <executions> 118 <execution> 119 <id>attach-docs</id> 120 </execution> 121 <execution> 122 <id>generate-javadoc-site-report</id> 123 <phase>site</phase> 124 <goals><goal>javadoc</goal></goals> 125 </execution> 126 </executions> 127 </plugin> 128 </plugins> 129 </build> 130 <profiles> 131 <profile> 132 <id>srczip</id> 133 <activation> 134 <file> 135 <exists>${java.home}/../src.zip</exists> 136 </file> 137 </activation> 138 <dependencies> 139 <dependency> 140 <groupId>jdk</groupId> 141 <artifactId>srczip</artifactId> 142 <version>999</version> 143 <scope>system</scope> 144 <systemPath>${java.home}/../src.zip</systemPath> 145 <optional>true</optional> 146 </dependency> 147 </dependencies> 148 </profile> 149 <profile> 150 <id>jdk8</id> 151 <activation> 152 <jdk>[1.8,)</jdk> 153 </activation> 154 <!-- Disable doclint under JDK 8 --> 155 <!-- This is defined in guava-parent as well, but we need it here too because the 156 <additionalparam> from the maven-javadoc-plugin configuration above seems to 157 override the one from the parent pom. --> 158 <reporting> 159 <plugins> 160 <plugin> 161 <groupId>org.apache.maven.plugins</groupId> 162 <artifactId>maven-javadoc-plugin</artifactId> 163 <configuration> 164 <additionalparam>-XDignore.symbol.file -Xdoclint:none</additionalparam> 165 </configuration> 166 </plugin> 167 </plugins> 168 </reporting> 169 <build> 170 <plugins> 171 <plugin> 172 <groupId>org.apache.maven.plugins</groupId> 173 <artifactId>maven-javadoc-plugin</artifactId> 174 <configuration> 175 <additionalparam>-XDignore.symbol.file -Xdoclint:none</additionalparam> 176 </configuration> 177 </plugin> 178 </plugins> 179 </build> 180 </profile> 181 </profiles> 182 </project> 183