• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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