blob: 8af943769bd03b16161d9fa95a5730bec8d93f26 [file] [log] [blame]
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +00001<?xml version="1.0" encoding="UTF-8"?>
2<!--
Marc R. Hoffmannd05ad7d2011-01-12 23:17:31 +00003 Copyright (c) 2009, 2011 Mountainminds GmbH & Co. KG and Contributors
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +00004 All rights reserved. This program and the accompanying materials
5 are made available under the terms of the Eclipse Public License v1.0
6 which accompanies this distribution, and is available at
7 http://www.eclipse.org/legal/epl-v10.html
8
9 Contributors:
10 Evgeny Mandrikov - initial API and implementation
11-->
12<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">
13 <modelVersion>4.0.0</modelVersion>
14
15 <groupId>org.jacoco</groupId>
16 <artifactId>org.jacoco.build</artifactId>
Evgeny Mandrikov245184a2011-07-06 22:36:20 +000017 <version>0.5.4-SNAPSHOT</version>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +000018 <packaging>pom</packaging>
19
20 <name>JaCoCo</name>
Evgeny Mandrikov6cdb0102011-06-12 22:34:27 +000021 <description>JaCoCo - Java Code Coverage Library</description>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +000022 <url>http://jacoco.org</url>
23 <inceptionYear>2009</inceptionYear>
24 <organization>
25 <name>Mountainminds GmbH &amp; Co. KG</name>
26 </organization>
27 <licenses>
28 <license>
29 <name>Eclipse Public License v1.0</name>
30 <url>http://www.eclipse.org/legal/epl-v10.html</url>
31 <distribution>repo</distribution>
32 </license>
33 </licenses>
34
35 <prerequisites>
36 <!-- Tycho works only with Maven 3.x -->
37 <maven>3.0</maven>
38 </prerequisites>
39
40 <developers>
41 <developer>
42 <id>mtnminds</id>
43 <name>Marc R. Hoffmann</name>
44 <roles>
45 <role>Project Lead</role>
46 </roles>
47 </developer>
48 <developer>
49 <id>brock_j</id>
50 <name>Brock Janiczak</name>
Brock Janiczak4312b152011-01-21 09:05:57 +000051 <email>brockj@gmail.com</email>
52 <timezone>+10</timezone>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +000053 <roles>
54 <role>Developer</role>
55 </roles>
56 </developer>
57 <developer>
58 <id>mandrikov</id>
59 <name>Evgeny Mandrikov</name>
60 <email>mandrikov@gmail.com</email>
61 <url>http://godin.net.ru</url>
62 <organization>SonarSource</organization>
63 <organizationUrl>http://www.sonarsource.com</organizationUrl>
64 <timezone>+3</timezone>
65 <roles>
66 <role>Build and release manager</role>
67 </roles>
68 </developer>
69 </developers>
70
71 <contributors>
72 <contributor>
73 <name>Radek Liba</name>
74 </contributor>
75 <contributor>
76 <name>Christoph Beck</name>
77 </contributor>
78 </contributors>
79
80 <modules>
81 <!-- Order is important: org.jacoco.agent.rt embeds into org.jacoco.agent and JaCoCo Agent used during tests -->
82 <module>../org.jacoco.core</module>
83 <module>../org.jacoco.report</module>
84 <module>../org.jacoco.agent.rt</module>
85 <module>../org.jacoco.agent</module>
86 <module>../org.jacoco.ant</module>
87 <module>../org.jacoco.ant-nodeps</module>
88
Evgeny Mandrikov6cdb0102011-06-12 22:34:27 +000089 <module>../jacoco-maven-plugin</module>
90
91 <module>../org.jacoco.tests</module>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +000092
93 <module>../org.jacoco.examples</module>
94 <module>../org.jacoco.doc</module>
95 </modules>
96
97 <scm>
Evgeny Mandrikov245184a2011-07-06 22:36:20 +000098 <connection>scm:svn:https://eclemma.svn.sourceforge.net/svnroot/eclemma/jacoco/trunk/org.jacoco.build</connection>
99 <developerConnection>scm:svn:https://eclemma.svn.sourceforge.net/svnroot/eclemma/jacoco/trunk/org.jacoco.build</developerConnection>
100 <url>https://eclemma.svn.sourceforge.net/svnroot/eclemma/jacoco/trunk/org.jacoco.build</url>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +0000101 </scm>
102 <issueManagement>
103 <system>Trac</system>
104 <url>https://sourceforge.net/apps/trac/eclemma/</url>
105 </issueManagement>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +0000106 <distributionManagement>
107 <repository>
Evgeny Mandrikov0d653442011-04-12 03:04:34 +0000108 <id>sonatype-nexus-staging</id>
109 <name>Nexus Release Repository</name>
110 <url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +0000111 </repository>
112 <snapshotRepository>
Evgeny Mandrikov0d653442011-04-12 03:04:34 +0000113 <id>sonatype-nexus-snapshots</id>
114 <name>Sonatype Nexus Snapshots</name>
115 <url>${sonatypeOssDistMgmtSnapshotsUrl}</url>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +0000116 </snapshotRepository>
117 </distributionManagement>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +0000118
119 <properties>
120 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
Evgeny Mandrikov0d653442011-04-12 03:04:34 +0000121 <sonatypeOssDistMgmtSnapshotsUrl>https://oss.sonatype.org/content/repositories/snapshots/</sonatypeOssDistMgmtSnapshotsUrl>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +0000122
123 <maven.build.timestamp.format>yyyy/MM/dd</maven.build.timestamp.format>
124 <build.date>${maven.build.timestamp}</build.date>
125 <jacoco.home.url>http://jacoco.org</jacoco.home.url>
126
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +0000127 <jvm.args></jvm.args>
Evgeny Mandrikov6cdb0102011-06-12 22:34:27 +0000128 <argLine>${jvm.args}</argLine>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +0000129 <tycho.testArgLine>${argLine}</tycho.testArgLine>
130
131 <!-- Plugins versions -->
Evgeny Mandrikovcd1eb192011-05-29 15:31:25 +0000132 <tycho.version>0.12.0</tycho.version>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +0000133
134 <!-- Dependencies versions -->
135 <asm.version>3.2</asm.version>
136 <ant.version>1.7.0</ant.version>
137 <junit.version>4.8.2</junit.version>
Evgeny Mandrikovc4e02ce2011-04-08 20:57:13 +0000138
139 <!-- ================== -->
140 <!-- For Sonar analysis -->
141 <!-- ================== -->
Evgeny Mandrikov44da1f82011-06-24 22:34:59 +0000142 <sonar.skippedModules>org.jacoco.tests</sonar.skippedModules>
Evgeny Mandrikov2d3fc472011-05-09 22:59:09 +0000143
Evgeny Mandrikovf6179c52011-07-03 22:29:48 +0000144 <sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
145 <sonar.dynamicAnalysis>reuseReports</sonar.dynamicAnalysis>
146 <sonar.jacoco.reportPath>../${project.artifactId}.test/target/jacoco.exec</sonar.jacoco.reportPath>
147 <sonar.surefire.reportsPath>../${project.artifactId}.test/target/surefire-reports/</sonar.surefire.reportsPath>
148
Evgeny Mandrikovc4e02ce2011-04-08 20:57:13 +0000149 <!-- See http://jira.codehaus.org/browse/SONAR-2096 -->
150 <sonar.java.source>1.5</sonar.java.source>
151 <sonar.java.target>1.5</sonar.java.target>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +0000152 </properties>
153
154 <dependencyManagement>
155 <dependencies>
156 <!-- Project dependencies -->
157 <dependency>
158 <groupId>${project.groupId}</groupId>
159 <artifactId>org.jacoco.core</artifactId>
160 <version>${project.version}</version>
161 </dependency>
162 <dependency>
163 <groupId>${project.groupId}</groupId>
164 <artifactId>org.jacoco.report</artifactId>
165 <version>${project.version}</version>
166 </dependency>
167 <dependency>
168 <groupId>${project.groupId}</groupId>
169 <artifactId>org.jacoco.agent</artifactId>
170 <version>${project.version}</version>
171 </dependency>
172 <dependency>
173 <groupId>${project.groupId}</groupId>
174 <artifactId>org.jacoco.agent.rt</artifactId>
175 <version>${project.version}</version>
176 </dependency>
177 <dependency>
178 <groupId>${project.groupId}</groupId>
179 <artifactId>org.jacoco.ant</artifactId>
180 <version>${project.version}</version>
181 </dependency>
182 <dependency>
183 <groupId>${project.groupId}</groupId>
184 <artifactId>org.jacoco.ant-nodeps</artifactId>
185 <version>${project.version}</version>
186 </dependency>
187 <!-- Third-party dependencies -->
188 <dependency>
189 <groupId>asm</groupId>
190 <artifactId>asm</artifactId>
191 <version>${asm.version}</version>
192 </dependency>
193 <dependency>
194 <groupId>asm</groupId>
195 <artifactId>asm-commons</artifactId>
196 <version>${asm.version}</version>
197 </dependency>
198 <dependency>
199 <groupId>org.apache.ant</groupId>
200 <artifactId>ant</artifactId>
201 <version>${ant.version}</version>
202 </dependency>
203 <dependency>
204 <groupId>junit</groupId>
205 <artifactId>junit</artifactId>
206 <version>${junit.version}</version>
207 </dependency>
208 </dependencies>
209 </dependencyManagement>
210
211 <build>
212 <resources>
213 <resource>
214 <directory>src</directory>
215 <filtering>false</filtering>
216 <excludes>
217 <exclude>**/*.java</exclude>
218 <exclude>**/*.properties</exclude>
219 </excludes>
220 </resource>
221 <resource>
222 <directory>src</directory>
223 <filtering>true</filtering>
224 <includes>
225 <include>**/*.properties</include>
226 </includes>
227 </resource>
228 <resource>
229 <directory>.</directory>
230 <filtering>true</filtering>
231 <includes>
232 <include>about.html</include>
233 </includes>
234 </resource>
235 </resources>
236
237 <pluginManagement>
238 <plugins>
239 <!-- Apache plugins -->
240 <plugin>
241 <groupId>org.apache.maven.plugins</groupId>
242 <artifactId>maven-antrun-plugin</artifactId>
243 <version>1.6</version>
244 </plugin>
245 <plugin>
246 <groupId>org.apache.maven.plugins</groupId>
247 <artifactId>maven-assembly-plugin</artifactId>
Evgeny Mandrikovf3f98892011-06-29 18:55:57 +0000248 <version>2.2.1</version>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +0000249 </plugin>
250 <plugin>
251 <groupId>org.apache.maven.plugins</groupId>
252 <artifactId>maven-clean-plugin</artifactId>
253 <version>2.4.1</version>
254 </plugin>
255 <plugin>
256 <groupId>org.apache.maven.plugins</groupId>
257 <artifactId>maven-compiler-plugin</artifactId>
258 <version>2.3.2</version>
259 </plugin>
260 <plugin>
261 <groupId>org.apache.maven.plugins</groupId>
262 <artifactId>maven-dependency-plugin</artifactId>
Evgeny Mandrikovf3f98892011-06-29 18:55:57 +0000263 <version>2.2</version>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +0000264 </plugin>
265 <plugin>
266 <groupId>org.apache.maven.plugins</groupId>
267 <artifactId>maven-deploy-plugin</artifactId>
Evgeny Mandrikovf3f98892011-06-29 18:55:57 +0000268 <version>2.6</version>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +0000269 </plugin>
270 <plugin>
271 <groupId>org.apache.maven.plugins</groupId>
272 <artifactId>maven-enforcer-plugin</artifactId>
Evgeny Mandrikovf3f98892011-06-29 18:55:57 +0000273 <version>1.0.1</version>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +0000274 </plugin>
275 <plugin>
276 <groupId>org.apache.maven.plugins</groupId>
277 <artifactId>maven-install-plugin</artifactId>
278 <version>2.3.1</version>
279 </plugin>
280 <plugin>
281 <groupId>org.apache.maven.plugins</groupId>
Evgeny Mandrikovf3f98892011-06-29 18:55:57 +0000282 <artifactId>maven-invoker-plugin</artifactId>
283 <version>1.5</version>
284 </plugin>
285 <plugin>
286 <groupId>org.apache.maven.plugins</groupId>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +0000287 <artifactId>maven-gpg-plugin</artifactId>
Evgeny Mandrikovf3f98892011-06-29 18:55:57 +0000288 <version>1.3</version>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +0000289 </plugin>
290 <plugin>
291 <groupId>org.apache.maven.plugins</groupId>
292 <artifactId>maven-jar-plugin</artifactId>
293 <version>2.3.1</version>
294 </plugin>
295 <plugin>
296 <groupId>org.apache.maven.plugins</groupId>
297 <artifactId>maven-jarsigner-plugin</artifactId>
298 <version>1.2</version>
299 </plugin>
300 <plugin>
301 <groupId>org.apache.maven.plugins</groupId>
302 <artifactId>maven-javadoc-plugin</artifactId>
Evgeny Mandrikovf3f98892011-06-29 18:55:57 +0000303 <version>2.8</version>
Evgeny Mandrikovb6116f62011-04-14 15:53:50 +0000304 <configuration>
305 <quiet>true</quiet>
Evgeny Mandrikova31358e2011-04-23 13:34:53 +0000306 <detectOfflineLinks>false</detectOfflineLinks>
Evgeny Mandrikovb6116f62011-04-14 15:53:50 +0000307 </configuration>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +0000308 </plugin>
309 <plugin>
310 <groupId>org.apache.maven.plugins</groupId>
Evgeny Mandrikovf3f98892011-06-29 18:55:57 +0000311 <artifactId>maven-plugin-plugin</artifactId>
312 <version>2.8</version>
313 </plugin>
314 <plugin>
315 <groupId>org.apache.maven.plugins</groupId>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +0000316 <artifactId>maven-release-plugin</artifactId>
317 <version>2.1</version>
318 <configuration>
319 <tagBase>https://eclemma.svn.sourceforge.net/svnroot/eclemma/jacoco/tags</tagBase>
320 <autoVersionSubmodules>true</autoVersionSubmodules>
321 <mavenExecutorId>forked-path</mavenExecutorId>
322 <useReleaseProfile>false</useReleaseProfile>
323 <!--
324 Allows to activate release profile during release.
325 We don't use releaseProfiles parameter, because it affects only release:perform goal
326 -->
327 <arguments>-Prelease</arguments>
328 </configuration>
329 </plugin>
330 <plugin>
331 <groupId>org.apache.maven.plugins</groupId>
332 <artifactId>maven-resources-plugin</artifactId>
Evgeny Mandrikovf3f98892011-06-29 18:55:57 +0000333 <version>2.5</version>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +0000334 </plugin>
335 <plugin>
336 <groupId>org.apache.maven.plugins</groupId>
337 <artifactId>maven-shade-plugin</artifactId>
338 <version>1.4</version>
339 </plugin>
340 <plugin>
341 <groupId>org.apache.maven.plugins</groupId>
342 <artifactId>maven-source-plugin</artifactId>
343 <version>2.1.2</version>
344 </plugin>
345 <plugin>
346 <groupId>org.apache.maven.plugins</groupId>
347 <artifactId>maven-surefire-plugin</artifactId>
Evgeny Mandrikovf3f98892011-06-29 18:55:57 +0000348 <version>2.9</version>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +0000349 </plugin>
350 <plugin>
351 <groupId>org.apache.maven.plugins</groupId>
352 <artifactId>maven-site-plugin</artifactId>
353 <version>3.0-beta-3</version>
354 </plugin>
355 <plugin>
356 <groupId>org.apache.maven.plugins</groupId>
357 <artifactId>maven-toolchains-plugin</artifactId>
358 <version>1.0</version>
359 </plugin>
Evgeny Mandrikovcd1eb192011-05-29 15:31:25 +0000360 <!-- Tycho plugins -->
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +0000361 <plugin>
Evgeny Mandrikovcd1eb192011-05-29 15:31:25 +0000362 <groupId>org.eclipse.tycho</groupId>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +0000363 <artifactId>tycho-maven-plugin</artifactId>
364 <version>${tycho.version}</version>
365 </plugin>
366 <plugin>
Evgeny Mandrikovcd1eb192011-05-29 15:31:25 +0000367 <groupId>org.eclipse.tycho</groupId>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +0000368 <artifactId>target-platform-configuration</artifactId>
369 <version>${tycho.version}</version>
370 </plugin>
371 <plugin>
Evgeny Mandrikovcd1eb192011-05-29 15:31:25 +0000372 <groupId>org.eclipse.tycho</groupId>
Evgeny Mandrikov9315a5f2011-07-01 09:31:48 +0000373 <artifactId>tycho-packaging-plugin</artifactId>
374 <version>${tycho.version}</version>
375 </plugin>
376 <plugin>
377 <groupId>org.eclipse.tycho</groupId>
Evgeny Mandrikovcd1eb192011-05-29 15:31:25 +0000378 <artifactId>tycho-source-plugin</artifactId>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +0000379 <version>${tycho.version}</version>
380 </plugin>
381 <plugin>
Evgeny Mandrikovcd1eb192011-05-29 15:31:25 +0000382 <groupId>org.eclipse.tycho</groupId>
383 <artifactId>tycho-compiler-plugin</artifactId>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +0000384 <version>${tycho.version}</version>
385 </plugin>
386 <plugin>
Evgeny Mandrikovcd1eb192011-05-29 15:31:25 +0000387 <groupId>org.eclipse.tycho</groupId>
388 <artifactId>tycho-surefire-plugin</artifactId>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +0000389 <version>${tycho.version}</version>
390 </plugin>
391 <!-- Mojo plugins -->
392 <plugin>
393 <groupId>org.codehaus.mojo</groupId>
394 <artifactId>animal-sniffer-maven-plugin</artifactId>
395 <version>1.6</version>
396 </plugin>
Evgeny Mandrikovc4be9862011-06-27 04:29:03 +0000397 <plugin>
398 <groupId>org.codehaus.mojo</groupId>
399 <artifactId>build-helper-maven-plugin</artifactId>
400 <version>1.5</version>
401 </plugin>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +0000402 <!-- Third-party plugins -->
403 <plugin>
404 <groupId>org.codehaus.groovy.maven</groupId>
405 <artifactId>gmaven-plugin</artifactId>
406 <version>1.0</version>
407 </plugin>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +0000408 </plugins>
409 </pluginManagement>
410
411 <plugins>
412 <plugin>
Evgeny Mandrikovcd1eb192011-05-29 15:31:25 +0000413 <groupId>org.eclipse.tycho</groupId>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +0000414 <artifactId>tycho-maven-plugin</artifactId>
415 <extensions>true</extensions>
416 </plugin>
417 <plugin>
Evgeny Mandrikovcd1eb192011-05-29 15:31:25 +0000418 <groupId>org.eclipse.tycho</groupId>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +0000419 <artifactId>target-platform-configuration</artifactId>
420 <configuration>
421 <resolver>p2</resolver>
422 </configuration>
423 </plugin>
424 <plugin>
Evgeny Mandrikovcd1eb192011-05-29 15:31:25 +0000425 <groupId>org.eclipse.tycho</groupId>
426 <artifactId>tycho-compiler-plugin</artifactId>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +0000427 <configuration>
428 <excludeResources>
429 <excludeResource>**/*.properties</excludeResource>
430 </excludeResources>
431 </configuration>
432 </plugin>
433 <plugin>
Evgeny Mandrikovcd1eb192011-05-29 15:31:25 +0000434 <groupId>org.eclipse.tycho</groupId>
435 <artifactId>tycho-surefire-plugin</artifactId>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +0000436 <configuration>
437 <skipExec>${skipTests}</skipExec>
438 </configuration>
439 </plugin>
440
441 <plugin>
442 <groupId>org.apache.maven.plugins</groupId>
Evgeny Mandrikov840aeb32011-04-11 09:41:28 +0000443 <artifactId>maven-surefire-plugin</artifactId>
444 <configuration>
445 <testSourceDirectory>${project.build.sourceDirectory}</testSourceDirectory>
446 <testClassesDirectory>${project.build.outputDirectory}</testClassesDirectory>
447 </configuration>
448 </plugin>
449
450 <plugin>
451 <groupId>org.apache.maven.plugins</groupId>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +0000452 <artifactId>maven-resources-plugin</artifactId>
453 <configuration>
454 <!-- We can't use delimiters "${*}" and "$*$" together - probably it's bug in plugin -->
455 <!-- so for now we will define only our delimiters in compliance with https://sourceforge.net/apps/trac/eclemma/changeset/1229 -->
456 <!-- but it would be better to use defaults -->
457 <useDefaultDelimiters>false</useDefaultDelimiters>
458 <delimiters>
459 <delimiter>@*@</delimiter>
460 <delimiter>$*$</delimiter>
461 </delimiters>
462 </configuration>
463 </plugin>
464
465 <plugin>
466 <groupId>org.apache.maven.plugins</groupId>
467 <artifactId>maven-shade-plugin</artifactId>
468 <configuration>
469 <filters>
470 <!-- Don't include signatures -->
471 <filter>
472 <artifact>*:*</artifact>
473 <excludes>
474 <exclude>META-INF/*.SF</exclude>
475 <exclude>META-INF/*.DSA</exclude>
476 <exclude>META-INF/*.RSA</exclude>
477 </excludes>
478 </filter>
479 </filters>
480 <transformers>
481 <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
482 <manifestEntries>
483 <Implementation-Title>${project.description}</Implementation-Title>
484 <Implementation-Vendor>${project.organization.name}</Implementation-Vendor>
485 <Implementation-Version>${project.version}</Implementation-Version>
486 </manifestEntries>
487 </transformer>
488 </transformers>
489 </configuration>
490 </plugin>
491
492 <plugin>
493 <groupId>org.apache.maven.plugins</groupId>
Evgeny Mandrikov88836892011-04-23 14:06:15 +0000494 <artifactId>maven-assembly-plugin</artifactId>
495 <configuration>
496 <archiverConfig>
497 <!-- Workaround for http://jira.codehaus.org/browse/MASSEMBLY-422 -->
498 <!-- 420(dec) = 644(oct) -->
499 <fileMode>420</fileMode>
500 <!-- 493(dec) = 755(oct) -->
501 <directoryMode>493</directoryMode>
502 <defaultDirectoryMode>493</defaultDirectoryMode>
503 </archiverConfig>
504 </configuration>
505 </plugin>
506
507 <plugin>
508 <groupId>org.apache.maven.plugins</groupId>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +0000509 <artifactId>maven-enforcer-plugin</artifactId>
510 <executions>
511 <execution>
512 <id>enforce</id>
513 <phase>validate</phase>
514 <goals>
515 <goal>enforce</goal>
516 </goals>
517 <configuration>
518 <rules>
519 <requireNoRepositories>
520 <message>The rules for repo1.maven.org are that pom.xml files should not include repository definitions.</message>
521 <banRepositories>true</banRepositories>
522 <banPluginRepositories>true</banPluginRepositories>
523 </requireNoRepositories>
Evgeny Mandrikovdb6b1db2011-04-12 03:19:07 +0000524 <requireReleaseDeps>
525 <message>No SNAPSHOT versions allowed for dependencies</message>
526 <onlyWhenRelease>true</onlyWhenRelease>
527 </requireReleaseDeps>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +0000528 </rules>
529 </configuration>
530 </execution>
531 </executions>
532 </plugin>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +0000533 </plugins>
534 </build>
535
536 <profiles>
537 <!-- This profile is used to launch tests with different JDK versions. -->
538 <profile>
539 <id>integration-tests</id>
540 <activation>
541 <property>
542 <name>jdk.version</name>
543 </property>
544 </activation>
545 <build>
546 <plugins>
547 <!-- See http://maven.apache.org/guides/mini/guide-using-toolchains.html -->
548 <plugin>
549 <groupId>org.apache.maven.plugins</groupId>
550 <artifactId>maven-toolchains-plugin</artifactId>
551 <executions>
552 <execution>
553 <phase>validate</phase>
554 <goals>
555 <goal>toolchain</goal>
556 </goals>
557 </execution>
558 </executions>
559 <configuration>
560 <toolchains>
561 <jdk>
562 <version>${jdk.version}</version>
563 </jdk>
564 </toolchains>
565 </configuration>
566 </plugin>
567 </plugins>
568 </build>
569 </profile>
570
571 <profile>
572 <id>jdk16</id>
573 <activation>
574 <property>
575 <name>jdk.version</name>
576 <value>1.6</value>
577 </property>
578 </activation>
579 <properties>
580 <jvm.args>-XX:-FailOverToOldVerifier -Xverify:all</jvm.args>
581 </properties>
582 </profile>
583
584 <profile>
585 <id>jdk17</id>
586 <activation>
587 <property>
588 <name>jdk.version</name>
589 <value>1.7</value>
590 </property>
591 </activation>
592 <properties>
593 <jvm.args>-XX:-FailOverToOldVerifier -Xverify:all</jvm.args>
594 </properties>
595 </profile>
596
597 <profile>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +0000598 <id>sign</id>
599 <activation>
600 <property>
601 <name>jarsigner.alias</name>
602 </property>
603 </activation>
604 <build>
605 <plugins>
606 <plugin>
607 <groupId>org.apache.maven.plugins</groupId>
608 <artifactId>maven-jarsigner-plugin</artifactId>
609 <executions>
610 <execution>
611 <id>sign</id>
612 <goals>
613 <goal>sign</goal>
614 </goals>
615 </execution>
616 </executions>
617 </plugin>
618 </plugins>
619 </build>
620 </profile>
621
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +0000622 <profile>
Evgeny Mandrikovb6116f62011-04-14 15:53:50 +0000623 <id>sources</id>
624 <activation>
Evgeny Mandrikov968fd382011-07-05 12:10:40 +0000625 <file>
626 <exists>src/</exists>
627 </file>
Evgeny Mandrikovb6116f62011-04-14 15:53:50 +0000628 </activation>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +0000629 <build>
630 <plugins>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +0000631 <!-- Generates jar with sources -->
632 <plugin>
633 <groupId>org.apache.maven.plugins</groupId>
634 <artifactId>maven-source-plugin</artifactId>
635 <executions>
636 <execution>
637 <id>attach-sources</id>
638 <phase>verify</phase>
639 <goals>
640 <goal>jar-no-fork</goal>
641 </goals>
642 </execution>
643 </executions>
644 </plugin>
645 <plugin>
Evgeny Mandrikovcd1eb192011-05-29 15:31:25 +0000646 <groupId>org.eclipse.tycho</groupId>
647 <artifactId>tycho-source-plugin</artifactId>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +0000648 <executions>
649 <execution>
650 <id>attach-sources</id>
651 <goals>
652 <goal>plugin-source</goal>
653 </goals>
654 </execution>
655 </executions>
656 </plugin>
657 <!-- Generates Javadoc -->
658 <plugin>
659 <groupId>org.apache.maven.plugins</groupId>
660 <artifactId>maven-javadoc-plugin</artifactId>
661 <executions>
662 <execution>
663 <id>attach-javadocs</id>
664 <goals>
665 <goal>jar</goal>
666 </goals>
667 </execution>
668 </executions>
669 </plugin>
Evgeny Mandrikovb6116f62011-04-14 15:53:50 +0000670 </plugins>
671 </build>
672 </profile>
673
674 <!-- This profile is activated when a project is released. -->
675 <profile>
676 <id>release</id>
677 <build>
678 <plugins>
679 <plugin>
680 <groupId>org.apache.maven.plugins</groupId>
681 <artifactId>maven-enforcer-plugin</artifactId>
682 <inherited>false</inherited>
683 <executions>
684 <execution>
Evgeny Mandrikov7957ecf2011-07-05 23:57:09 +0000685 <id>enforce-release-rules</id>
Evgeny Mandrikovb6116f62011-04-14 15:53:50 +0000686 <phase>verify</phase>
687 <goals>
688 <goal>enforce</goal>
689 </goals>
690 <configuration>
691 <rules>
Evgeny Mandrikov7957ecf2011-07-05 23:57:09 +0000692 <!--
Evgeny Mandrikovb6116f62011-04-14 15:53:50 +0000693 <requireActiveProfile>
694 <message>You must sign JARs during release.</message>
695 <profiles>sign</profiles>
696 </requireActiveProfile>
Evgeny Mandrikov7957ecf2011-07-05 23:57:09 +0000697 -->
698 <requireReleaseVersion/>
Evgeny Mandrikovb6116f62011-04-14 15:53:50 +0000699 </rules>
700 </configuration>
701 </execution>
702 </executions>
703 </plugin>
Evgeny Mandrikov1fea1692011-01-10 14:35:11 +0000704 <!-- Checks compatibility with Java API -->
705 <plugin>
706 <groupId>org.codehaus.mojo</groupId>
707 <artifactId>animal-sniffer-maven-plugin</artifactId>
708 <executions>
709 <execution>
710 <id>enforce-java-api-compatibility</id>
711 <phase>verify</phase>
712 <goals>
713 <goal>check</goal>
714 </goals>
715 <configuration>
716 <signature>
717 <groupId>org.codehaus.mojo.signature</groupId>
718 <artifactId>java15</artifactId>
719 <version>1.0</version>
720 </signature>
721 </configuration>
722 </execution>
723 </executions>
724 </plugin>
725 <!-- Signs artifacts -->
726 <plugin>
727 <groupId>org.apache.maven.plugins</groupId>
728 <artifactId>maven-gpg-plugin</artifactId>
729 <executions>
730 <execution>
731 <id>sign-artifacts</id>
732 <phase>verify</phase>
733 <goals>
734 <goal>sign</goal>
735 </goals>
736 </execution>
737 </executions>
738 </plugin>
739 </plugins>
740 </build>
741 </profile>
742
743 <!-- This profile is activated only during build and allows to use p2 repository without bothering our consumers and in compliance with rules for repo1 -->
744 <profile>
745 <id>tycho</id>
746 <activation>
747 <file>
748 <!-- This employs that the basedir expression is only recognized by Maven 3.x (see MNG-2363) -->
749 <exists>${basedir}</exists>
750 </file>
751 </activation>
752 <repositories>
753 <repository>
754 <id>jacoco-thirdparty</id>
755 <layout>p2</layout>
756 <url>http://download.eclipse.org/releases/helios</url>
757 </repository>
758 </repositories>
759 </profile>
760 </profiles>
761</project>