blob: f807602895389748d2dbfe9bb83fed54f1a1af71 [file] [log] [blame]
mccullsbc7e1502010-10-21 23:36:09 +00001<?xml version="1.0" encoding="UTF-8"?>
sberlinb0852382010-08-01 19:55:08 +00002
mccullsbc7e1502010-10-21 23:36:09 +00003<!--
4Copyright (c) 2006 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>com.google</groupId>
22 <artifactId>google</artifactId>
23 <version>5</version>
24 </parent>
25
26 <packaging>pom</packaging>
27
28 <groupId>com.google.inject</groupId>
29 <artifactId>guice-parent</artifactId>
30 <version>3.0-SNAPSHOT</version>
31
32 <name>Google Guice</name>
33
34 <description>
35 Guice is a lightweight dependency injection framework for Java 5 and above
36 </description>
37
38 <url>http://code.google.com/p/google-guice/</url>
39 <inceptionYear>2006</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>Guice Users List</name>
49 <archive>http://groups.google.com/group/google-guice/topics</archive>
50 <subscribe>http://groups.google.com/group/google-guice/subscribe</subscribe>
51 <unsubscribe>http://groups.google.com/group/google-guice/subscribe</unsubscribe>
52 <post>http://groups.google.com/group/google-guice/post</post>
53 </mailingList>
54 <mailingList>
55 <name>Guice Developers List</name>
56 <archive>http://groups.google.com/group/google-guice-dev/topics</archive>
57 <subscribe>http://groups.google.com/group/google-guice-dev/subscribe</subscribe>
58 <unsubscribe>http://groups.google.com/group/google-guice-dev/subscribe</unsubscribe>
59 <post>http://groups.google.com/group/google-guice-dev/post</post>
60 </mailingList>
61 </mailingLists>
62
63 <scm>
64 <connection>scm:svn:http://google-guice.googlecode.com/svn/trunk</connection>
65 <developerConnection>scm:svn:https://google-guice.googlecode.com/svn/trunk</developerConnection>
66 <url>http://code.google.com/p/google-guice/source/browse</url>
67 </scm>
68
69 <issueManagement>
70 <system>Google Code</system>
71 <url>http://code.google.com/p/google-guice/issues/</url>
72 </issueManagement>
73
mcculls00090052010-10-22 00:12:40 +000074 <ciManagement>
75 <system>Hudson</system>
76 <url>https://grid.sonatype.org/ci/job/Google-Guice/</url>
77 </ciManagement>
78
mccullsbc7e1502010-10-21 23:36:09 +000079 <licenses>
80 <license>
81 <name>The Apache Software License, Version 2.0</name>
82 <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
83 <distribution>repo</distribution>
84 </license>
85 </licenses>
86
87 <modules>
88 <module>core</module>
89 <module>extensions</module>
90 </modules>
91
mcculls4d4e1602010-11-24 21:16:07 +000092 <prerequisites>
93 <maven>3.0</maven>
94 </prerequisites>
95
mccullsbc7e1502010-10-21 23:36:09 +000096 <properties>
mccullsaacb4842010-11-04 22:51:25 +000097 <!--
98 | The spec version of the public Guice API
99 -->
mccullsbc7e1502010-10-21 23:36:09 +0000100 <guice.api.version>1.3</guice.api.version>
mcculls8846db32010-11-04 02:22:00 +0000101 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
mccullsaacb4842010-11-04 22:51:25 +0000102 <!--
103 | Use "-Dguice.with.jarjar=false" to build without jarjar
104 -->
mcculls8846db32010-11-04 02:22:00 +0000105 <guice.with.jarjar>true</guice.with.jarjar>
mccullsaacb4842010-11-04 22:51:25 +0000106 <!--
mcculls692ca952010-12-10 15:05:01 +0000107 | Use "-Dguice.with.no_aop=false" to skip the no-AOP variant
mccullsaacb4842010-11-04 22:51:25 +0000108 -->
mcculls692ca952010-12-10 15:05:01 +0000109 <guice.with.no_aop>true</guice.with.no_aop>
mccullsbc7e1502010-10-21 23:36:09 +0000110 </properties>
111
112 <dependencies>
mccullsaacb4842010-11-04 22:51:25 +0000113 <!--
mccullsaacb4842010-11-04 22:51:25 +0000114 | Run tests with TestNG
115 -->
mcculls8846db32010-11-04 02:22:00 +0000116 <dependency>
mcculls47575202010-11-04 15:02:41 +0000117 <groupId>org.testng</groupId>
118 <artifactId>testng</artifactId>
119 <version>5.11</version>
120 <classifier>jdk15</classifier>
mccullsbc7e1502010-10-21 23:36:09 +0000121 <scope>test</scope>
sberlinb0852382010-08-01 19:55:08 +0000122 </dependency>
crazybobleeac266a22007-02-26 00:07:01 +0000123 </dependencies>
mccullsbc7e1502010-10-21 23:36:09 +0000124
mccullsbc7e1502010-10-21 23:36:09 +0000125 <build>
mccullsaacb4842010-11-04 22:51:25 +0000126 <!--
127 | Ant-style directories
128 -->
mccullsbc7e1502010-10-21 23:36:09 +0000129 <sourceDirectory>${project.basedir}/src</sourceDirectory>
130 <resources>
131 <resource>
132 <filtering>false</filtering>
133 <directory>${project.basedir}/src</directory>
134 <excludes>
135 <exclude>**/*.java</exclude>
136 </excludes>
137 </resource>
138 </resources>
139 <testSourceDirectory>${project.basedir}/test</testSourceDirectory>
140 <testResources>
141 <testResource>
142 <filtering>false</filtering>
143 <directory>${project.basedir}/test</directory>
144 <excludes>
145 <exclude>**/*.java</exclude>
146 </excludes>
147 </testResource>
148 </testResources>
149 <pluginManagement>
150 <plugins>
151 <plugin>
152 <artifactId>maven-compiler-plugin</artifactId>
153 <version>2.3.2</version>
154 </plugin>
mccullsaacb4842010-11-04 22:51:25 +0000155 <!--
156 | Make sure we only use Java5 methods
157 -->
mccullsbc7e1502010-10-21 23:36:09 +0000158 <plugin>
159 <groupId>org.codehaus.mojo</groupId>
160 <artifactId>animal-sniffer-maven-plugin</artifactId>
161 <version>1.6</version>
162 <configuration>
163 <signature>
164 <groupId>org.codehaus.mojo.signature</groupId>
165 <artifactId>java15</artifactId>
166 <version>1.0</version>
167 </signature>
168 </configuration>
169 <executions>
170 <execution>
171 <id>check-java-1.5-compat</id>
172 <phase>process-classes</phase>
173 <goals>
174 <goal>check</goal>
175 </goals>
176 </execution>
177 </executions>
178 </plugin>
mccullsaacb4842010-11-04 22:51:25 +0000179 <!--
180 | Shared JarJar configuration
181 -->
mccullsbc7e1502010-10-21 23:36:09 +0000182 <plugin>
mcculls8846db32010-11-04 02:22:00 +0000183 <groupId>org.sonatype.plugins</groupId>
184 <artifactId>jarjar-maven-plugin</artifactId>
mcculls2c3076b2010-11-04 02:36:40 +0000185 <version>1.3</version>
mcculls8846db32010-11-04 02:22:00 +0000186 <configuration>
187 <rules>
188 <rule>
189 <pattern>net.sf.cglib.*</pattern>
190 <result>com.google.inject.internal.cglib.$@1</result>
191 </rule>
192 <rule>
193 <pattern>net.sf.cglib.**.*</pattern>
194 <result>com.google.inject.internal.cglib.@1.$@2</result>
195 </rule>
196 <rule>
197 <pattern>org.objectweb.asm.*</pattern>
198 <result>com.google.inject.internal.asm.$@1</result>
199 </rule>
200 <rule>
201 <pattern>org.objectweb.asm.**.*</pattern>
202 <result>com.google.inject.internal.asm.@1.$@2</result>
203 </rule>
204 <rule>
205 <pattern>com.google.inject.internal.util.*</pattern>
206 <result>com.google.inject.internal.util.$@1</result>
207 </rule>
208 <rule>
209 <pattern>com.google.inject.internal.util.**.*</pattern>
210 <result>com.google.inject.internal.util.@1.$@2</result>
211 </rule>
212 <keep>
213 <pattern>com.google.inject.**</pattern>
214 </keep>
mcculls188875a2010-11-04 02:49:55 +0000215 <keep>
216 <pattern>com.googlecode.**</pattern>
217 </keep>
mcculls8846db32010-11-04 02:22:00 +0000218 </rules>
219 </configuration>
mccullsaacb4842010-11-04 22:51:25 +0000220 <!--
221 | JarJar all classes before running tests
222 -->
mcculls8846db32010-11-04 02:22:00 +0000223 <executions>
224 <execution>
225 <id>jarjar-classes</id>
226 <phase>process-test-classes</phase>
227 <goals>
228 <goal>jarjar</goal>
229 </goals>
230 <configuration>
231 <input>{classes}</input>
232 </configuration>
233 </execution>
234 <execution>
235 <id>jarjar-test-classes</id>
236 <phase>process-test-classes</phase>
237 <goals>
238 <goal>jarjar</goal>
239 </goals>
240 <configuration>
241 <input>{test-classes}</input>
242 </configuration>
243 </execution>
244 </executions>
245 </plugin>
246 <plugin>
mccullsbc7e1502010-10-21 23:36:09 +0000247 <artifactId>maven-surefire-plugin</artifactId>
mcculls8846db32010-11-04 02:22:00 +0000248 <version>2.5</version>
mccullsbc7e1502010-10-21 23:36:09 +0000249 <configuration>
250 <redirectTestOutputToFile>true</redirectTestOutputToFile>
251 </configuration>
252 </plugin>
mccullsaacb4842010-11-04 22:51:25 +0000253 <!--
254 | Shared OSGi manifest configuration
255 -->
mccullsbc7e1502010-10-21 23:36:09 +0000256 <plugin>
257 <groupId>org.apache.felix</groupId>
258 <artifactId>maven-bundle-plugin</artifactId>
259 <version>2.1.0</version>
260 <configuration>
261 <instructions>
mcculls8846db32010-11-04 02:22:00 +0000262 <module>com.google.inject</module>
263 <_include>-${project.basedir}/build.properties</_include>
mccullsbc7e1502010-10-21 23:36:09 +0000264 <Bundle-Copyright>Copyright (C) 2006 Google Inc.</Bundle-Copyright>
265 <Bundle-DocURL>http://code.google.com/p/google-guice/</Bundle-DocURL>
mcculls8846db32010-11-04 02:22:00 +0000266 <Bundle-Name>${project.artifactId}</Bundle-Name>
267 <Bundle-SymbolicName>$(module)</Bundle-SymbolicName>
mccullsbc7e1502010-10-21 23:36:09 +0000268 <Bundle-RequiredExecutionEnvironment>
269 J2SE-1.5,JavaSE-1.6
270 </Bundle-RequiredExecutionEnvironment>
271 <Import-Package>!com.google.inject.*,*</Import-Package>
mcculls8846db32010-11-04 02:22:00 +0000272 <_exportcontents>!*.internal.*,$(module).*;version=${guice.api.version}</_exportcontents>
mccullsbc7e1502010-10-21 23:36:09 +0000273 <_versionpolicy>[$(version;==;$(@)),$(version;+;$(@)))</_versionpolicy>
274 <_nouses>true</_nouses>
275 <_removeheaders>
276 Embed-Dependency,Embed-Transitive,
277 Built-By,Tool,Created-By,Build-Jdk,
278 Originally-Created-By,Archiver-Version,
279 Include-Resource,Private-Package,
280 Ignore-Package,Bnd-LastModified
281 </_removeheaders>
282 </instructions>
283 </configuration>
284 <executions>
285 <execution>
286 <phase>prepare-package</phase>
287 <goals>
288 <goal>manifest</goal>
289 </goals>
290 </execution>
291 </executions>
292 </plugin>
mccullsaacb4842010-11-04 22:51:25 +0000293 <!--
294 | Package OSGi manifest in final JAR, also create a JAR of the test classes
295 -->
mccullsbc7e1502010-10-21 23:36:09 +0000296 <plugin>
297 <artifactId>maven-jar-plugin</artifactId>
298 <version>2.3.1</version>
299 <configuration>
300 <archive>
301 <manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>
302 </archive>
303 </configuration>
304 <executions>
305 <execution>
306 <phase>package</phase>
307 <goals>
308 <goal>test-jar</goal>
309 </goals>
310 </execution>
311 </executions>
312 </plugin>
313 <plugin>
314 <artifactId>maven-javadoc-plugin</artifactId>
315 <version>2.7</version>
316 </plugin>
317 <plugin>
318 <artifactId>maven-source-plugin</artifactId>
319 <version>2.1.2</version>
320 </plugin>
321 <plugin>
322 <artifactId>maven-gpg-plugin</artifactId>
323 <version>1.1</version>
324 </plugin>
325 <plugin>
326 <artifactId>maven-release-plugin</artifactId>
327 <version>2.1</version>
328 <configuration>
329 <autoVersionSubmodules>true</autoVersionSubmodules>
330 </configuration>
331 </plugin>
332 </plugins>
333 </pluginManagement>
mccullsbc7e1502010-10-21 23:36:09 +0000334 </build>
335
mcculls88153582010-10-22 00:01:07 +0000336 <profiles>
337 <profile>
mccullsaacb4842010-11-04 22:51:25 +0000338 <!--
mcculls44894842010-12-06 15:53:13 +0000339 | Release profile: capture source and javadoc
340 -->
341 <id>release</id>
342 <build>
343 <plugins>
344 <plugin>
345 <artifactId>maven-source-plugin</artifactId>
346 <executions>
347 <execution>
348 <id>attach-sources</id>
349 <goals>
350 <goal>jar</goal>
351 </goals>
352 </execution>
353 </executions>
354 </plugin>
355 <plugin>
356 <artifactId>maven-javadoc-plugin</artifactId>
357 <executions>
358 <execution>
359 <id>attach-javadocs</id>
360 <goals>
361 <goal>jar</goal>
362 </goals>
363 </execution>
364 </executions>
365 </plugin>
366 </plugins>
367 </build>
368 </profile>
369 <profile>
370 <!--
mccullsaacb4842010-11-04 22:51:25 +0000371 | Deployment profile for the Sonatype Grid
372 -->
mcculls88153582010-10-22 00:01:07 +0000373 <id>sonatype-grid</id>
mccullsec491882010-10-22 00:10:06 +0000374 <properties>
375 <forgeReleaseId>forge-releases</forgeReleaseId>
376 <forgeReleaseUrl>http://repository.sonatype.org:8081/service/local/staging/deploy/maven2</forgeReleaseUrl>
377 <forgeSnapshotId>forge-snapshots</forgeSnapshotId>
378 <forgeSnapshotUrl>http://repository.sonatype.org/content/repositories/snapshots</forgeSnapshotUrl>
379 </properties>
mcculls88153582010-10-22 00:01:07 +0000380 <distributionManagement>
381 <repository>
mccullsec491882010-10-22 00:10:06 +0000382 <id>${forgeReleaseId}</id>
383 <url>${forgeReleaseUrl}</url>
mcculls88153582010-10-22 00:01:07 +0000384 </repository>
385 <snapshotRepository>
mccullsec491882010-10-22 00:10:06 +0000386 <id>${forgeSnapshotId}</id>
387 <url>${forgeSnapshotUrl}</url>
mcculls88153582010-10-22 00:01:07 +0000388 </snapshotRepository>
389 </distributionManagement>
390 </profile>
391 </profiles>
392
crazybobleeac266a22007-02-26 00:07:01 +0000393</project>