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>18.0</version> 9 </parent> 10 <artifactId>guava-gwt</artifactId> 11 <name>Guava GWT compatible libs</name> 12 <description> 13 Guava is a suite of core and expanded libraries that include 14 utility classes, google's collections, io classes, and much 15 much more. 16 17 This project includes GWT-friendly sources. 18 </description> 19 <properties> 20 <gwt.test.include>**/GwtTestSuite.java</gwt.test.include> 21 <gwt.version>2.6.1</gwt.version> 22 </properties> 23 <dependencies> 24 <!-- GWT requires a library's transitive dependencies to be present when 25 compiling a project that uses that library, thanks to its full-program 26 compilation, so we don't use optional=true. --> 27 <dependency> 28 <groupId>com.google.code.findbugs</groupId> 29 <artifactId>jsr305</artifactId> 30 <optional>false</optional> 31 </dependency> 32 <dependency> 33 <groupId>com.google.guava</groupId> 34 <artifactId>guava</artifactId> 35 <version>${project.version}</version> 36 </dependency> 37 <dependency> 38 <groupId>com.google.guava</groupId> 39 <artifactId>guava-testlib</artifactId> 40 <version>${project.version}</version> 41 <scope>test</scope> 42 </dependency> 43 <dependency> 44 <groupId>com.google.guava</groupId> 45 <artifactId>guava-testlib</artifactId> 46 <version>${project.version}</version> 47 <classifier>tests</classifier> 48 <scope>test</scope> 49 </dependency> 50 <dependency> 51 <groupId>com.google.guava</groupId> 52 <artifactId>guava-tests</artifactId> 53 <version>${project.version}</version> 54 <classifier>tests</classifier> 55 <scope>test</scope> 56 </dependency> 57 <dependency> 58 <groupId>com.google.gwt</groupId> 59 <artifactId>gwt-dev</artifactId> 60 <version>${gwt.version}</version> 61 <scope>provided</scope> 62 </dependency> 63 <dependency> 64 <groupId>com.google.gwt</groupId> 65 <artifactId>gwt-user</artifactId> 66 <version>${gwt.version}</version> 67 <scope>provided</scope> 68 </dependency> 69 <dependency> 70 <groupId>com.google.truth</groupId> 71 <artifactId>truth</artifactId> 72 <version>${truth.version}</version> 73 <classifier>gwt</classifier> 74 <scope>test</scope> 75 </dependency> 76 </dependencies> 77 <build> 78 <plugins> 79 <plugin> 80 <artifactId>maven-compiler-plugin</artifactId> 81 </plugin> 82 <plugin> 83 <artifactId>maven-jar-plugin</artifactId> 84 </plugin> 85 <plugin> 86 <artifactId>maven-source-plugin</artifactId> 87 </plugin> 88 <plugin> 89 <artifactId>maven-javadoc-plugin</artifactId> 90 </plugin> 91 <!-- Disable "normal" testing, which doesn't work for GWT tests. --> 92 <plugin> 93 <artifactId>maven-surefire-plugin</artifactId> 94 <configuration> 95 <skip>true</skip> 96 </configuration> 97 </plugin> 98 <plugin> 99 <artifactId>maven-dependency-plugin</artifactId> 100 <executions> 101 <execution> 102 <id>unpack-guava-sources</id> 103 <phase>generate-resources</phase> 104 <goals><goal>unpack-dependencies</goal></goals> 105 <configuration> 106 <includeArtifactIds>guava</includeArtifactIds> 107 <classifier>sources</classifier> 108 <overWrite>true</overWrite> 109 <excludeTransitive>true</excludeTransitive> 110 <excludes>META-INF/MANIFEST.MF</excludes> 111 <outputDirectory>${project.build.directory}/guava-sources</outputDirectory> 112 <type>java-source</type> 113 <silent>false</silent> 114 </configuration> 115 </execution> 116 <execution> 117 <id>unpack-guava-testlib-sources</id> 118 <phase>generate-resources</phase> 119 <goals><goal>unpack-dependencies</goal></goals> 120 <configuration> 121 <includeArtifactIds>guava-testlib</includeArtifactIds> 122 <classifier>sources</classifier> 123 <overWrite>true</overWrite> 124 <excludeTransitive>true</excludeTransitive> 125 <excludes>META-INF/MANIFEST.MF</excludes> 126 <outputDirectory>${project.build.directory}/guava-test-sources</outputDirectory> 127 <type>java-source</type> 128 <silent>false</silent> 129 </configuration> 130 </execution> 131 <execution> 132 <id>unpack-guava-testlib-test-sources</id> 133 <phase>generate-resources</phase> 134 <goals><goal>unpack-dependencies</goal></goals> 135 <configuration> 136 <includeArtifactIds>guava-testlib</includeArtifactIds> 137 <classifier>test-sources</classifier> 138 <overWrite>true</overWrite> 139 <excludeTransitive>true</excludeTransitive> 140 <excludes>META-INF/MANIFEST.MF</excludes> 141 <outputDirectory>${project.build.directory}/guava-test-sources</outputDirectory> 142 <type>java-source</type> 143 <silent>false</silent> 144 </configuration> 145 </execution> 146 <execution> 147 <id>unpack-guava-test-sources</id> 148 <phase>generate-resources</phase> 149 <goals><goal>unpack-dependencies</goal></goals> 150 <configuration> 151 <includeArtifactIds>guava-tests</includeArtifactIds> 152 <classifier>test-sources</classifier> 153 <overWrite>true</overWrite> 154 <excludeTransitive>true</excludeTransitive> 155 <excludes>META-INF/MANIFEST.MF</excludes> 156 <outputDirectory>${project.build.directory}/guava-test-sources</outputDirectory> 157 <type>java-source</type> 158 <silent>false</silent> 159 </configuration> 160 </execution> 161 </executions> 162 <dependencies> 163 <dependency> 164 <groupId>com.google.guava</groupId> 165 <artifactId>guava</artifactId> 166 <version>${project.version}</version> 167 <classifier>sources</classifier> 168 </dependency> 169 <dependency> 170 <groupId>com.google.guava</groupId> 171 <artifactId>guava-testlib</artifactId> 172 <version>${project.version}</version> 173 <classifier>sources</classifier> 174 </dependency> 175 <dependency> 176 <groupId>com.google.guava</groupId> 177 <artifactId>guava-testlib</artifactId> 178 <version>${project.version}</version> 179 <classifier>test-sources</classifier> 180 </dependency> 181 <dependency> 182 <groupId>com.google.guava</groupId> 183 <artifactId>guava-tests</artifactId> 184 <version>${project.version}</version> 185 <classifier>test-sources</classifier> 186 </dependency> 187 </dependencies> 188 </plugin> 189 <plugin> 190 <artifactId>maven-antrun-plugin</artifactId> 191 <executions> 192 <execution> 193 <phase>generate-resources</phase> 194 <goals><goal>run</goal></goals> 195 <configuration> 196 <target name="copy-gwt-resources"> 197 <copy toDir="${project.build.directory}/guava-gwt-sources" 198 verbose="true"> 199 <fileset dir="${project.build.directory}/guava-sources"> 200 <and> 201 <contains text="@GwtCompatible"/> 202 <not><contains text="emulated = true"/></not> 203 </and> 204 </fileset> 205 </copy> 206 <copy toDir="${project.build.directory}/guava-test-gwt-sources" 207 verbose="true"> 208 <fileset dir="${project.build.directory}/guava-test-sources"> 209 <and> 210 <contains text="@GwtCompatible"/> 211 <not><contains text="emulated = true"/></not> 212 </and> 213 </fileset> 214 </copy> 215 </target> 216 </configuration> 217 </execution> 218 </executions> 219 </plugin> 220 <plugin> 221 <groupId>org.codehaus.mojo</groupId> 222 <artifactId>gwt-maven-plugin</artifactId> 223 <version>${gwt.version}</version> 224 <executions> 225 <execution> 226 <id>gwt-compile</id> 227 <goals> 228 <goal>compile</goal> 229 </goals> 230 <configuration> 231 <module>com.google.common.ForceGuavaCompilation</module> 232 <strict>true</strict> 233 <validateOnly>true</validateOnly> 234 </configuration> 235 </execution> 236 <execution> 237 <id>gwt-test</id> 238 <goals> 239 <goal>test</goal> 240 </goals> 241 <configuration> 242 <module>com.google.common.GuavaTests</module> 243 <strict>true</strict> 244 <includes>${gwt.test.include}</includes> 245 <mode>htmlunit</mode> 246 <testTimeOut>600</testTimeOut> 247 <extraJvmArgs>-Xms3500m -Xmx3500m -Xss1024k</extraJvmArgs> 248 </configuration> 249 </execution> 250 </executions> 251 </plugin> 252 </plugins> 253 <resources> 254 <resource> 255 <directory>src</directory> 256 </resource> 257 <resource> 258 <directory>src-super</directory> 259 </resource> 260 <resource> 261 <directory>${project.build.directory}/guava-gwt-sources</directory> 262 </resource> 263 </resources> 264 <testResources> 265 <testResource> 266 <directory>test</directory> 267 </testResource> 268 <testResource> 269 <directory>test-super</directory> 270 </testResource> 271 <testResource> 272 <directory>${project.build.directory}/guava-test-gwt-sources</directory> 273 </testResource> 274 </testResources> 275 </build> 276</project> 277