blob: 9cdc7938a0082bc90fd00b6183a00c67b4ab334e [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>
Colin Decker5a209e92015-04-28 16:18:44 -040030 <version>4.0</version>
mccullsbc7e1502010-10-21 23:36:09 +000031
32 <name>Google Guice</name>
33
34 <description>
Sam Berlin0558b322014-07-10 16:33:32 -040035 Guice is a lightweight dependency injection framework for Java 6 and above
mccullsbc7e1502010-10-21 23:36:09 +000036 </description>
37
Sam Berlin0558b322014-07-10 16:33:32 -040038 <url>https://github.com/google/guice</url>
mccullsbc7e1502010-10-21 23:36:09 +000039 <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>
Sam Berlin0558b322014-07-10 16:33:32 -040064 <connection>scm:git:git://github.com/google/guice.git</connection>
65 <developerConnection>scm:git:ssh://git@github.com/google/guice.git</developerConnection>
66 <url>https://github.com/google/guice</url>
mccullsbc7e1502010-10-21 23:36:09 +000067 </scm>
68
69 <issueManagement>
70 <system>Google Code</system>
Sam Berlin0558b322014-07-10 16:33:32 -040071 <url>https://github.com/google/guice/issues/</url>
mccullsbc7e1502010-10-21 23:36:09 +000072 </issueManagement>
73
mcculls00090052010-10-22 00:12:40 +000074 <ciManagement>
Sam Berlin0558b322014-07-10 16:33:32 -040075 <system>Travis</system>
76 <url>https://travis-ci.org/google/guice</url>
mcculls00090052010-10-22 00:12:40 +000077 </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
Sam Berlinc15e74a2014-08-08 14:17:15 -040087 <distributionManagement>
88 <!-- override the parent's directory to point to the canonical place, and use https. -->
Colin Deckera7e52fc2014-09-24 16:26:07 -040089 <repository>
90 <id>google-releases</id>
91 <url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
92 </repository>
Sam Berlinc15e74a2014-08-08 14:17:15 -040093 <snapshotRepository>
94 <id>google-snapshots</id>
95 <url>https://oss.sonatype.org/content/repositories/snapshots</url>
96 </snapshotRepository>
97 </distributionManagement>
98
mccullsbc7e1502010-10-21 23:36:09 +000099 <modules>
Thomas Broyer3b76b6f2014-11-04 13:26:11 +0100100 <module>bom</module>
mccullsbc7e1502010-10-21 23:36:09 +0000101 <module>core</module>
102 <module>extensions</module>
cgdeckerded13a72014-10-20 10:32:51 -0700103 <!-- jdk8-tests module activated only when running under JDK8, below -->
mccullsbc7e1502010-10-21 23:36:09 +0000104 </modules>
105
mcculls4d4e1602010-11-24 21:16:07 +0000106 <prerequisites>
107 <maven>3.0</maven>
108 </prerequisites>
109
mccullsbc7e1502010-10-21 23:36:09 +0000110 <properties>
mccullsaacb4842010-11-04 22:51:25 +0000111 <!--
112 | The spec version of the public Guice API
113 -->
Christian Edward Gruber359c5c32013-07-31 15:56:55 -0700114 <guice.api.version>1.4</guice.api.version>
mcculls8846db32010-11-04 02:22:00 +0000115 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
mccullsaacb4842010-11-04 22:51:25 +0000116 <!--
117 | Use "-Dguice.with.jarjar=false" to build without jarjar
118 -->
mcculls8846db32010-11-04 02:22:00 +0000119 <guice.with.jarjar>true</guice.with.jarjar>
mccullsaacb4842010-11-04 22:51:25 +0000120 <!--
mcculls692ca952010-12-10 15:05:01 +0000121 | Use "-Dguice.with.no_aop=false" to skip the no-AOP variant
mccullsaacb4842010-11-04 22:51:25 +0000122 -->
mcculls692ca952010-12-10 15:05:01 +0000123 <guice.with.no_aop>true</guice.with.no_aop>
Christian Edward Gruber359c5c32013-07-31 15:56:55 -0700124 <gpg.skip>true</gpg.skip>
mccullsbc7e1502010-10-21 23:36:09 +0000125 </properties>
126
Stuart McCulloch2fb23e32014-08-17 14:44:01 +0100127 <dependencyManagement>
128 <dependencies>
129 <dependency>
130 <groupId>javax.inject</groupId>
131 <artifactId>javax.inject</artifactId>
132 <version>1</version>
133 </dependency>
134 <dependency>
135 <groupId>javax.inject</groupId>
136 <artifactId>javax.inject-tck</artifactId>
137 <version>1</version>
138 </dependency>
139 <dependency>
140 <groupId>aopalliance</groupId>
141 <artifactId>aopalliance</artifactId>
142 <version>1.0</version>
143 </dependency>
144 <dependency>
145 <groupId>com.google.guava</groupId>
146 <artifactId>guava</artifactId>
147 <version>16.0.1</version>
148 </dependency>
149 <dependency>
150 <groupId>com.google.guava</groupId>
151 <artifactId>guava-testlib</artifactId>
152 <version>16.0.1</version>
153 </dependency>
154 <dependency>
155 <groupId>org.ow2.asm</groupId>
156 <artifactId>asm</artifactId>
157 <version>5.0.3</version>
158 </dependency>
159 <dependency>
160 <groupId>cglib</groupId>
161 <artifactId>cglib</artifactId>
162 <version>3.1</version>
163 </dependency>
164 </dependencies>
165 </dependencyManagement>
166
mccullsbc7e1502010-10-21 23:36:09 +0000167 <dependencies>
mcculls8846db32010-11-04 02:22:00 +0000168 <dependency>
Christian Edward Gruber3236b102014-02-13 10:37:24 -0800169 <groupId>junit</groupId>
170 <artifactId>junit</artifactId>
171 <version>4.11</version>
mccullsbc7e1502010-10-21 23:36:09 +0000172 <scope>test</scope>
sberlinb0852382010-08-01 19:55:08 +0000173 </dependency>
crazybobleeac266a22007-02-26 00:07:01 +0000174 </dependencies>
mccullsbc7e1502010-10-21 23:36:09 +0000175
mccullsbc7e1502010-10-21 23:36:09 +0000176 <build>
mccullsaacb4842010-11-04 22:51:25 +0000177 <!--
178 | Ant-style directories
179 -->
mccullsbc7e1502010-10-21 23:36:09 +0000180 <sourceDirectory>${project.basedir}/src</sourceDirectory>
181 <resources>
182 <resource>
183 <filtering>false</filtering>
184 <directory>${project.basedir}/src</directory>
185 <excludes>
186 <exclude>**/*.java</exclude>
187 </excludes>
188 </resource>
189 </resources>
190 <testSourceDirectory>${project.basedir}/test</testSourceDirectory>
191 <testResources>
192 <testResource>
193 <filtering>false</filtering>
194 <directory>${project.basedir}/test</directory>
195 <excludes>
196 <exclude>**/*.java</exclude>
197 </excludes>
198 </testResource>
199 </testResources>
200 <pluginManagement>
201 <plugins>
mcculls33018c32011-01-04 15:16:27 +0000202 <!--
Stuart McCulloch4ad62562014-09-07 18:19:25 +0100203 | Use 'mvn license:format -N' at top of project to add missing headers
204 -->
205 <plugin>
206 <groupId>com.mycila</groupId>
207 <artifactId>license-maven-plugin</artifactId>
208 <version>2.6</version>
209 <configuration>
210 <encoding>UTF-8</encoding>
211 <header>${project.basedir}/lib/build/header.txt</header>
212 <headerDefinitions>
213 <headerDefinition>${project.basedir}/lib/build/header-definitions.xml</headerDefinition>
214 </headerDefinitions>
215 <skipExistingHeaders>true</skipExistingHeaders>
216 <aggregate>true</aggregate>
217 <includes>
218 <include>**/*.java</include>
219 </includes>
220 <excludes>
221 <!-- avoid touching munged/lib/test/example code -->
222 <exclude>**/build/**</exclude>
223 <exclude>**/target/**</exclude>
224 <exclude>**/lib/**</exclude>
225 <exclude>**/test/**</exclude>
226 <exclude>**/example*/**</exclude>
227 </excludes>
228 <mapping>
229 <java>JAVADOC_STYLE</java>
230 </mapping>
231 </configuration>
232 </plugin>
233 <!--
mcculls33018c32011-01-04 15:16:27 +0000234 | Standard LICENSE and NOTICE files
235 -->
mccullsbc7e1502010-10-21 23:36:09 +0000236 <plugin>
mcculls33018c32011-01-04 15:16:27 +0000237 <artifactId>maven-remote-resources-plugin</artifactId>
238 <version>1.1</version>
239 <executions>
240 <execution>
241 <goals>
242 <goal>process</goal>
243 </goals>
244 <configuration>
245 <resourceBundles>
246 <resourceBundle>org.apache:apache-jar-resource-bundle:1.4</resourceBundle>
247 </resourceBundles>
248 </configuration>
249 </execution>
250 </executions>
mccullsbc7e1502010-10-21 23:36:09 +0000251 </plugin>
mccullsaacb4842010-11-04 22:51:25 +0000252 <!--
Stuart McCulloch2fb23e32014-08-17 14:44:01 +0100253 | Make sure we only use Java6 methods
mccullsaacb4842010-11-04 22:51:25 +0000254 -->
mccullsbc7e1502010-10-21 23:36:09 +0000255 <plugin>
mcculls33018c32011-01-04 15:16:27 +0000256 <artifactId>maven-compiler-plugin</artifactId>
257 <version>2.3.2</version>
Christian Edward Gruber3236b102014-02-13 10:37:24 -0800258 <configuration>
259 <source>1.6</source>
260 <target>1.6</target>
261 </configuration>
mcculls33018c32011-01-04 15:16:27 +0000262 </plugin>
263 <plugin>
mccullsbc7e1502010-10-21 23:36:09 +0000264 <groupId>org.codehaus.mojo</groupId>
265 <artifactId>animal-sniffer-maven-plugin</artifactId>
Christian Edward Gruber3236b102014-02-13 10:37:24 -0800266 <version>1.10</version>
mccullsbc7e1502010-10-21 23:36:09 +0000267 <configuration>
268 <signature>
269 <groupId>org.codehaus.mojo.signature</groupId>
Christian Edward Gruber3236b102014-02-13 10:37:24 -0800270 <artifactId>java16</artifactId>
mccullsbc7e1502010-10-21 23:36:09 +0000271 <version>1.0</version>
272 </signature>
273 </configuration>
274 <executions>
275 <execution>
Christian Edward Gruber3236b102014-02-13 10:37:24 -0800276 <id>check-java-1.6-compat</id>
mccullsbc7e1502010-10-21 23:36:09 +0000277 <phase>process-classes</phase>
278 <goals>
279 <goal>check</goal>
280 </goals>
281 </execution>
282 </executions>
283 </plugin>
mcculls8846db32010-11-04 02:22:00 +0000284 <plugin>
mccullsbc7e1502010-10-21 23:36:09 +0000285 <artifactId>maven-surefire-plugin</artifactId>
mcculls8846db32010-11-04 02:22:00 +0000286 <version>2.5</version>
mccullsbc7e1502010-10-21 23:36:09 +0000287 <configuration>
288 <redirectTestOutputToFile>true</redirectTestOutputToFile>
Christian Edward Gruberba5acdf2013-10-05 14:05:39 -0700289 <!--<argLine>-Dguice_include_stack_traces=OFF</argLine>-->
mccullsbc7e1502010-10-21 23:36:09 +0000290 </configuration>
Christian Edward Grubere1197a92013-11-12 23:06:31 -0800291 <executions>
292 <execution>
293 <id>stack-traces-off</id>
294 <phase>test</phase>
295 <goals><goal>test</goal></goals>
296 <configuration>
297 <argLine>-Dguice_include_stack_traces=OFF</argLine>
298 </configuration>
299 </execution>
300 <execution>
301 <id>stack-traces-complete</id>
302 <phase>test</phase>
303 <goals><goal>test</goal></goals>
304 <configuration>
305 <argLine>-Dguice_include_stack_traces=COMPLETE</argLine>
306 </configuration>
307 </execution>
308 <execution>
309 <id>default-test</id>
310 <phase>test</phase>
311 <goals><goal>test</goal></goals>
312 <configuration>
313 <argLine>-Dguice_include_stack_traces=ONLY_FOR_DECLARING_SOURCE</argLine>
314 </configuration>
315 </execution>
316 </executions>
mccullsbc7e1502010-10-21 23:36:09 +0000317 </plugin>
mccullsaacb4842010-11-04 22:51:25 +0000318 <!--
319 | Shared OSGi manifest configuration
320 -->
mccullsbc7e1502010-10-21 23:36:09 +0000321 <plugin>
322 <groupId>org.apache.felix</groupId>
323 <artifactId>maven-bundle-plugin</artifactId>
324 <version>2.1.0</version>
325 <configuration>
326 <instructions>
mcculls8846db32010-11-04 02:22:00 +0000327 <module>com.google.inject</module>
328 <_include>-${project.basedir}/build.properties</_include>
mccullsbc7e1502010-10-21 23:36:09 +0000329 <Bundle-Copyright>Copyright (C) 2006 Google Inc.</Bundle-Copyright>
Sam Berlin0558b322014-07-10 16:33:32 -0400330 <Bundle-DocURL>https://github.com/google/guice</Bundle-DocURL>
mcculls8846db32010-11-04 02:22:00 +0000331 <Bundle-Name>${project.artifactId}</Bundle-Name>
332 <Bundle-SymbolicName>$(module)</Bundle-SymbolicName>
Stuart McCulloch2fb23e32014-08-17 14:44:01 +0100333 <Bundle-RequiredExecutionEnvironment>JavaSE-1.6</Bundle-RequiredExecutionEnvironment>
mccullsbc7e1502010-10-21 23:36:09 +0000334 <Import-Package>!com.google.inject.*,*</Import-Package>
mcculls8846db32010-11-04 02:22:00 +0000335 <_exportcontents>!*.internal.*,$(module).*;version=${guice.api.version}</_exportcontents>
Stuart McCulloch2fb23e32014-08-17 14:44:01 +0100336 <_versionpolicy>$(version;==;$(@))</_versionpolicy>
mccullsbc7e1502010-10-21 23:36:09 +0000337 <_nouses>true</_nouses>
338 <_removeheaders>
339 Embed-Dependency,Embed-Transitive,
340 Built-By,Tool,Created-By,Build-Jdk,
341 Originally-Created-By,Archiver-Version,
342 Include-Resource,Private-Package,
343 Ignore-Package,Bnd-LastModified
344 </_removeheaders>
345 </instructions>
346 </configuration>
347 <executions>
348 <execution>
349 <phase>prepare-package</phase>
350 <goals>
351 <goal>manifest</goal>
352 </goals>
353 </execution>
354 </executions>
355 </plugin>
mccullsaacb4842010-11-04 22:51:25 +0000356 <!--
357 | Package OSGi manifest in final JAR, also create a JAR of the test classes
358 -->
mccullsbc7e1502010-10-21 23:36:09 +0000359 <plugin>
360 <artifactId>maven-jar-plugin</artifactId>
361 <version>2.3.1</version>
362 <configuration>
363 <archive>
364 <manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>
sberlind5fcf7c2011-01-09 16:10:11 +0000365 <!-- Exclude to mirror ant build -->
Sam Berlin45ef0172012-01-13 18:22:35 -0500366 <addMavenDescriptor>false</addMavenDescriptor>
mccullsbc7e1502010-10-21 23:36:09 +0000367 </archive>
368 </configuration>
369 <executions>
370 <execution>
371 <phase>package</phase>
372 <goals>
373 <goal>test-jar</goal>
374 </goals>
375 </execution>
376 </executions>
377 </plugin>
378 <plugin>
379 <artifactId>maven-javadoc-plugin</artifactId>
380 <version>2.7</version>
Christian Edward Gruber359c5c32013-07-31 15:56:55 -0700381 <executions>
382 <execution>
383 <phase>package</phase>
384 <goals>
385 <goal>jar</goal>
386 </goals>
387 </execution>
388 </executions>
mccullsbc7e1502010-10-21 23:36:09 +0000389 </plugin>
390 <plugin>
391 <artifactId>maven-source-plugin</artifactId>
392 <version>2.1.2</version>
Christian Edward Gruber359c5c32013-07-31 15:56:55 -0700393 <executions>
394 <execution>
395 <phase>package</phase>
396 <goals>
397 <goal>jar</goal>
398 <goal>test-jar</goal>
399 </goals>
400 </execution>
401 </executions>
mccullsbc7e1502010-10-21 23:36:09 +0000402 </plugin>
403 <plugin>
404 <artifactId>maven-release-plugin</artifactId>
405 <version>2.1</version>
406 <configuration>
407 <autoVersionSubmodules>true</autoVersionSubmodules>
408 </configuration>
409 </plugin>
mccullsc2420fb2010-12-10 15:52:38 +0000410 <plugin>
411 <artifactId>maven-deploy-plugin</artifactId>
412 <version>2.5</version>
413 </plugin>
mccullsbc7e1502010-10-21 23:36:09 +0000414 </plugins>
415 </pluginManagement>
Christian Edward Gruber359c5c32013-07-31 15:56:55 -0700416 <plugins>
417 <!--
418 | Sign artifacts.
419 -->
420 <plugin>
421 <artifactId>maven-gpg-plugin</artifactId>
422 <version>1.4</version>
423 <executions>
424 <execution>
425 <id>sign-artifacts</id>
426 <phase>verify</phase>
427 <goals><goal>sign</goal></goals>
428 </execution>
429 </executions>
430 </plugin>
431 </plugins>
mccullsbc7e1502010-10-21 23:36:09 +0000432 </build>
433
mcculls88153582010-10-22 00:01:07 +0000434 <profiles>
435 <profile>
cgdeckerd0e92a72015-01-05 12:32:50 -0800436 <id>jdk8</id>
Sam Berlin310d3ad2014-07-25 09:10:16 -0400437 <activation>
438 <jdk>[1.8,)</jdk>
439 </activation>
cgdeckerd0e92a72015-01-05 12:32:50 -0800440 <!-- Activate jdk8-tests module only under JDK 8 -->
cgdeckerded13a72014-10-20 10:32:51 -0700441 <modules>
cgdeckerded13a72014-10-20 10:32:51 -0700442 <module>jdk8-tests</module>
443 </modules>
cgdeckerd0e92a72015-01-05 12:32:50 -0800444 <!-- Disable doclint under JDK 8 -->
445 <reporting>
cgruber5be3e952015-04-21 15:29:21 -0700446 <plugins>
Sam Berlin310d3ad2014-07-25 09:10:16 -0400447 <plugin>
448 <groupId>org.apache.maven.plugins</groupId>
449 <artifactId>maven-javadoc-plugin</artifactId>
450 <configuration>
451 <additionalparam>-Xdoclint:none</additionalparam>
452 </configuration>
453 </plugin>
cgdeckerd0e92a72015-01-05 12:32:50 -0800454 </plugins>
455 </reporting>
456 <build>
457 <plugins>
Sam Berlin310d3ad2014-07-25 09:10:16 -0400458 <plugin>
459 <groupId>org.apache.maven.plugins</groupId>
cgdeckerd0e92a72015-01-05 12:32:50 -0800460 <artifactId>maven-javadoc-plugin</artifactId>
Sam Berlin310d3ad2014-07-25 09:10:16 -0400461 <configuration>
cgdeckerd0e92a72015-01-05 12:32:50 -0800462 <additionalparam>-Xdoclint:none</additionalparam>
Sam Berlin310d3ad2014-07-25 09:10:16 -0400463 </configuration>
464 </plugin>
465 </plugins>
466 </build>
467 </profile>
mcculls88153582010-10-22 00:01:07 +0000468 </profiles>
cgruberdb4dbfd2015-02-20 15:30:37 -0800469 <!-- TODO(cgruber): Update the google parent pom or migrate to sonatype's -->
crazybobleeac266a22007-02-26 00:07:01 +0000470</project>