1<?xml version="1.0" encoding="UTF-8"?>
2
3<!--
4Copyright (c) 2009 Google, Inc. All rights reserved.
5
6This program is licensed to you under the Apache License Version 2.0,
7and you may not use this file except in compliance with the Apache License Version 2.0.
8You may obtain a copy of the Apache License Version 2.0 at http://www.apache.org/licenses/LICENSE-2.0.
9
10Unless required by applicable law or agreed to in writing,
11software distributed under the Apache License Version 2.0 is distributed on an
12"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13See the Apache License Version 2.0 for the specific language governing permissions and limitations there under.
14-->
15
16<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
17
18  <modelVersion>4.0.0</modelVersion>
19
20  <parent>
21    <groupId>org.sonatype.forge</groupId>
22    <artifactId>forge-parent</artifactId>
23    <version>10</version>
24  </parent>
25
26  <packaging>pom</packaging>
27
28  <groupId>org.sonatype.sisu.inject</groupId>
29  <artifactId>guava-parent</artifactId>
30  <version>0.9.9</version>
31
32  <name>Sisu Guava</name>
33
34  <description>
35    Patched build of Guava: Google Core Libraries for Java 1.5+
36  </description>
37
38  <url>http://code.google.com/p/guava-libraries/</url>
39  <inceptionYear>2009</inceptionYear>
40
41  <organization>
42    <name>Google, Inc.</name>
43    <url>http://www.google.com</url>
44  </organization>
45
46  <mailingLists>
47    <mailingList>
48      <name>Guava Discussion List</name>
49      <archive>http://groups.google.com/group/guava-discuss/topics</archive>
50      <subscribe>guava-discuss+subscribe@googlegroups.com</subscribe>
51      <unsubscribe>guava-discuss+unsubscribe@googlegroups.com</unsubscribe>
52      <post>http://groups.google.com/group/guava-discuss/post</post>
53    </mailingList>
54  </mailingLists>
55
56  <scm>
57    <connection>scm:git:git@github.com:sonatype/sisu-guava.git</connection>
58    <developerConnection>scm:git:git@github.com:sonatype/sisu-guava.git</developerConnection>
59    <url>http://github.com/sonatype/sisu-guava</url>
60  </scm>
61
62  <issueManagement>
63    <system>Google Code</system>
64    <url>http://code.google.com/p/guava-libraries/issues/</url>
65  </issueManagement>
66
67  <ciManagement>
68    <system>Hudson</system>
69    <url>https://builds.sonatype.org/job/sisu-guava/</url>
70  </ciManagement>
71
72  <licenses>
73    <license>
74      <name>The Apache Software License, Version 2.0</name>
75      <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
76      <distribution>repo</distribution>
77    </license>
78  </licenses>
79
80  <modules>
81    <module>guava</module>
82  </modules>
83
84  <prerequisites>
85    <maven>3.0</maven>
86  </prerequisites>
87
88  <properties>
89    <!--
90     | The spec version of the public Guava API
91    -->
92    <guava.api.version>${project.version}</guava.api.version>
93    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
94  </properties>
95
96  <dependencies>
97    <!--
98     | @Nullable
99    -->
100    <dependency>
101      <groupId>com.google.code.findbugs</groupId>
102      <artifactId>jsr305</artifactId>
103      <version>1.3.9</version>
104      <optional>true</optional>
105    </dependency>
106    <!--
107     | Run tests with TestNG
108    -->
109    <dependency>
110      <groupId>org.testng</groupId>
111      <artifactId>testng</artifactId>
112      <version>6.2</version>
113      <scope>test</scope>
114    </dependency>
115    <dependency>
116      <groupId>org.easymock</groupId>
117      <artifactId>easymock</artifactId>
118      <version>3.0</version>
119      <scope>test</scope>
120    </dependency>
121  </dependencies>
122
123  <dependencyManagement>
124    <dependencies>
125      <dependency>
126        <!--
127         | Make sure JUnit API is 4.x
128        -->
129        <groupId>junit</groupId>
130        <artifactId>junit</artifactId>
131        <version>4.9</version>
132        <scope>test</scope>
133      </dependency>
134    </dependencies>
135  </dependencyManagement>
136
137  <build>
138    <!--
139     | Ant-style directories
140    -->
141    <sourceDirectory>${project.basedir}/src</sourceDirectory>
142    <resources>
143      <resource>
144        <filtering>false</filtering>
145        <directory>${project.basedir}/src</directory>
146        <excludes>
147          <exclude>**/*.java</exclude>
148        </excludes>
149      </resource>
150    </resources>
151    <testSourceDirectory>${project.basedir}/test</testSourceDirectory>
152    <testResources>
153      <testResource>
154        <filtering>false</filtering>
155        <directory>${project.basedir}/test</directory>
156        <excludes>
157          <exclude>**/*.java</exclude>
158        </excludes>
159      </testResource>
160    </testResources>
161    <pluginManagement>
162      <plugins>
163        <!--
164         | Standard LICENSE and NOTICE files
165        -->
166        <plugin>
167          <artifactId>maven-remote-resources-plugin</artifactId>
168          <version>1.2.1</version>
169          <executions>
170            <execution>
171              <goals>
172                <goal>process</goal>
173              </goals>
174              <configuration>
175                <resourceBundles>
176                  <resourceBundle>org.apache:apache-jar-resource-bundle:1.4</resourceBundle>
177                </resourceBundles>
178              </configuration>
179            </execution>
180          </executions>
181        </plugin>
182        <!--
183         | Make sure we only use Java5 methods
184        -->
185        <plugin>
186          <artifactId>maven-compiler-plugin</artifactId>
187          <version>2.3.2</version>
188        </plugin>
189        <plugin>
190          <groupId>org.codehaus.mojo</groupId>
191          <artifactId>animal-sniffer-maven-plugin</artifactId>
192          <version>1.7</version>
193          <configuration>
194            <signature>
195              <groupId>org.codehaus.mojo.signature</groupId>
196              <artifactId>java15</artifactId>
197              <version>1.0</version>
198            </signature>
199            <ignores>
200              <ignore>sun.misc.Unsafe</ignore>
201            </ignores>
202          </configuration>
203          <executions>
204            <execution>
205              <id>check-java-1.5-compat</id>
206              <phase>test</phase>
207              <goals>
208                <goal>check</goal>
209              </goals>
210            </execution>
211          </executions>
212        </plugin>
213        <plugin>
214          <artifactId>maven-surefire-plugin</artifactId>
215          <version>2.9</version>
216          <configuration>
217            <redirectTestOutputToFile>true</redirectTestOutputToFile>
218          </configuration>
219        </plugin>
220        <!--
221         | Shared OSGi manifest configuration
222        -->
223        <plugin>
224          <groupId>org.apache.felix</groupId>
225          <artifactId>maven-bundle-plugin</artifactId>
226          <version>2.3.5</version>
227          <configuration>
228            <instructions>
229              <Bundle-Name>${project.artifactId}</Bundle-Name>
230              <Bundle-SymbolicName>$(maven-symbolicname);singleton:=true</Bundle-SymbolicName>
231              <Bundle-Copyright>Copyright (C) 2009 Google Inc.</Bundle-Copyright>
232              <Bundle-DocURL>http://code.google.com/p/guava-libraries/</Bundle-DocURL>
233              <Bundle-Vendor>Sonatype, Inc.</Bundle-Vendor>
234              <Bundle-RequiredExecutionEnvironment>
235                J2SE-1.5,JavaSE-1.6
236              </Bundle-RequiredExecutionEnvironment>
237              <_exportcontents>!*.internal.*,*;version=${guava.api.version}</_exportcontents>
238              <Import-Package>sun.*;resolution:=optional,*</Import-Package>
239              <_nouses>true</_nouses>
240              <_removeheaders>
241                Embed-Dependency,Embed-Transitive,
242                Built-By,Tool,Created-By,Build-Jdk,
243                Originally-Created-By,Archiver-Version,
244                Include-Resource,Private-Package,
245                Ignore-Package,Bnd-LastModified
246              </_removeheaders>
247            </instructions>
248            <archive>
249              <forced>true</forced><!-- dummy entry to stop bundleplugin from picking up jar config -->
250            </archive>
251          </configuration>
252          <executions>
253            <execution>
254              <phase>prepare-package</phase>
255              <goals>
256                <goal>manifest</goal>
257              </goals>
258            </execution>
259          </executions>
260        </plugin>
261        <!--
262         | Package OSGi manifest in final JAR, also create a JAR of the test classes
263        -->
264        <plugin>
265          <artifactId>maven-jar-plugin</artifactId>
266          <version>2.3.2</version>
267          <configuration>
268            <archive>
269              <manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>
270              <addMavenDescriptor>false</addMavenDescriptor><!--  Exclude to mirror ant build -->
271            </archive>
272          </configuration>
273          <executions>
274            <execution>
275              <phase>package</phase>
276              <goals>
277                <goal>test-jar</goal>
278              </goals>
279            </execution>
280          </executions>
281        </plugin>
282        <plugin>
283          <artifactId>maven-javadoc-plugin</artifactId>
284          <version>2.8</version>
285          <configuration>
286            <doclet>com.google.doclava.Doclava</doclet>
287            <docletPath>
288              ${project.basedir}/../lib/doclava.jar
289            </docletPath>
290            <!--
291             | bootclasspath required by Sun's JVM
292            -->
293            <bootclasspath>${sun.boot.class.path}</bootclasspath>
294            <excludePackageNames>*.internal</excludePackageNames>
295            <additionalparam>
296              -quiet
297              -federate JDK http://download.oracle.com/javase/6/docs/api/index.html?
298              -federationxml JDK http://doclava.googlecode.com/svn/static/api/openjdk-6.xml
299              -hdf project.name "${project.name} (patched build of Google Guava)"
300              -d ${project.build.directory}/apidocs
301            </additionalparam>
302            <useStandardDocletOptions>false</useStandardDocletOptions>
303            <!--
304             | Apple's JVM sometimes requires more memory
305            -->
306            <additionalJOption>-J-Xmx1024m</additionalJOption>
307          </configuration>
308        </plugin>
309        <plugin>
310          <artifactId>maven-site-plugin</artifactId>
311          <version>3.0</version>
312        </plugin>
313        <plugin>
314          <artifactId>maven-source-plugin</artifactId>
315          <version>2.1.2</version>
316        </plugin>
317        <plugin>
318          <artifactId>maven-gpg-plugin</artifactId>
319          <version>1.4</version>
320        </plugin>
321        <plugin>
322          <artifactId>maven-release-plugin</artifactId>
323          <version>2.2.1</version>
324          <configuration>
325            <autoVersionSubmodules>true</autoVersionSubmodules>
326          </configuration>
327        </plugin>
328        <plugin>
329          <artifactId>maven-deploy-plugin</artifactId>
330          <version>2.7</version>
331        </plugin>
332      </plugins>
333    </pluginManagement>
334  </build>
335
336</project>
337