Add jacoco definition to lifecycle plugin
[odlparent.git] / odlparent / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!-- vi: set et smarttab sw=2 tabstop=2: -->
3 <!--
4  Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
5
6  This program and the accompanying materials are made available under the
7  terms of the Eclipse Public License v1.0 which accompanies this distribution,
8  and is available at http://www.eclipse.org/legal/epl-v10.html
9 -->
10 <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/xsd/maven-4.0.0.xsd">
11   <modelVersion>4.0.0</modelVersion>
12
13   <parent>
14     <groupId>org.opendaylight.odlparent</groupId>
15     <artifactId>odlparent-lite</artifactId>
16     <version>1.7.0-SNAPSHOT</version>
17     <relativePath>../odlparent-lite</relativePath>
18   </parent>
19
20   <groupId>org.opendaylight.odlparent</groupId>
21   <artifactId>odlparent</artifactId>
22   <packaging>pom</packaging>
23   <name>ODL :: odlparent :: ${project.artifactId}</name>
24
25   <scm>
26     <connection>scm:git:ssh://git.opendaylight.org:29418/odlparent.git</connection>
27     <developerConnection>scm:git:ssh://git.opendaylight.org:29418/odlparent.git</developerConnection>
28     <tag>HEAD</tag>
29     <url>https://wiki.opendaylight.org/view/ODL_Root_Parent:Main</url>
30   </scm>
31
32   <!-- Variables should only be used where genuinely useful (to avoid
33        repetition); in general versions should be specified in the
34        corresponding dependencyManagement or pluginManagement element, not as
35        a variable. Duplication within odlparent doesn't count if it can be
36        managed using maven-versions-plugin. -->
37   <properties>
38     <nexus.repository.release>opendaylight.release</nexus.repository.release>
39     <nexus.repository.snapshot>opendaylight.snapshot</nexus.repository.snapshot>
40
41     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
42     <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
43
44     <!-- Java Versions -->
45     <!-- FIXME: confirm these two are picked by maven-compiler-plugin -->
46     <maven.compiler.source>1.8</maven.compiler.source>
47     <maven.compiler.target>1.8</maven.compiler.target>
48     <java.version.source>${maven.compiler.source}</java.version.source>
49     <java.version.target>${maven.compiler.target}</java.version.target>
50
51     <!-- Maven plugin versions, in the 'canonical' format -->
52     <maven.antrun.plugin.version>1.8</maven.antrun.plugin.version>
53     <maven.bundle.version>3.0.0</maven.bundle.version>
54     <maven.clean.plugin.version>2.6.1</maven.clean.plugin.version>
55     <maven.compile.plugin.version>3.3</maven.compile.plugin.version>
56     <maven.jar.version>2.6</maven.jar.version>
57     <maven.javadoc.version>2.10.3</maven.javadoc.version>
58     <maven.plugin.version>3.4</maven.plugin.version>
59     <maven.release.version>2.5.2</maven.release.version>
60     <maven.surefire.version>2.18.1</maven.surefire.version>
61
62     <!-- Maven plugin versions, in random formats -->
63     <bundle.plugin.version>${maven.bundle.version}</bundle.plugin.version>
64     <checkstyle.version>2.16</checkstyle.version>
65     <compiler.version>${maven.compile.plugin.version}</compiler.version>
66     <enforcer.version>1.4.1</enforcer.version>
67     <enunciate.version>1.31</enunciate.version> <!-- Needs to remain exported, as its used for dependencies, too -->
68     <exam.version>4.4.0</exam.version> <!-- Needs to remain exported, as its used for dependencies, too -->
69     <failsafe.version>2.18.1</failsafe.version>
70     <gmaven.plugin.version>1.0</gmaven.plugin.version>
71     <!--
72         Regression in jacoco-plugin 0.7.5 prevents us from upgrading to it
73         http://jira.xwiki.org/browse/XCOMMONS-821
74
75         Additionally we need to stay on jacoco 0.7.2.201409121644. Future
76         versions appear to have issues picking up code coverage for projects
77         that use PowerMock.
78         https://github.com/jayway/powermock/issues/564
79     -->
80     <jacoco.version>0.7.2.201409121644</jacoco.version>
81     <jar.plugin.version>${maven.jar.version}</jar.plugin.version>
82     <karaf.version>3.0.3</karaf.version> <!-- Needs to remain exported, as its used for dependencies, too -->
83     <projectinfo>2.8.1</projectinfo>
84     <propertymavenplugin.version>1.0-alpha-2</propertymavenplugin.version>
85     <releaseplugin.version>${maven.release.version}</releaseplugin.version>
86     <odl.checkstyle.version>0.2.0-SNAPSHOT</odl.checkstyle.version>
87
88     <!-- Supporting Libraries -->
89     <!-- Used by controller -->
90     <bouncycastle.version>1.54</bouncycastle.version>
91     <!-- Used by persistence, snmp4sdn; see also didm -->
92     <guava.version>18.0</guava.version>
93     <!-- Used by alto; see also affinity, defense4all, integration/distribution, snmp4sdn, toolkit, ttp -->
94     <jackson.version>2.3.2</jackson.version>
95     <!-- Used by snmp4sdn -->
96     <javassist.version>3.20.0-GA</javassist.version>
97
98     <!-- FIXME remove all dependencies for jersey 1.17 after migration all projects -->
99     <!-- Used by alto, centinel, tsdr; see also affinity, defense4all, nemo, snmp4sdn, toolkit -->
100     <jersey.version>1.17</jersey.version>
101
102     <!-- Used by centinel -->
103     <org.json.version>20131018</org.json.version>
104
105     <!-- Used by centinel -->
106     <jettison.version>1.3.7</jettison.version>
107     <!-- Used by persistence -->
108     <jsr305.api.version>3.0.0</jsr305.api.version>
109     <!-- Need to stick to JUnit 4.11 until
110          https://github.com/jayway/powermock/issues/560 is fixed (either in
111          PowerMock or with a new JUnit release) -->
112     <!-- Used by nic, persistence, tsdr; see also nemo -->
113     <junit.version>4.11</junit.version>
114     <!-- Used by snmp4sdn; see also affinity, toolkit -->
115     <logback.version>1.1.3</logback.version>
116     <!-- Used by nic, tsdr -->
117     <mockito.version>1.10.19</mockito.version>
118     <!-- Used by alto, controller, didm, snbi; see also centinel, dlux, toolkit, tsdr -->
119     <osgi.core.version>5.0.0</osgi.core.version>
120     <!-- Used by persistence, snmp4sdn; see also affinity, toolkit -->
121     <slf4j.version>1.7.12</slf4j.version>
122
123     <akka.version>2.4.3</akka.version>
124     <scala.version>2.11</scala.version>
125     <scala.micro.version>8</scala.micro.version>
126     <leveldb.version>0.7</leveldb.version>
127
128     <!-- Default Sonar configuration -->
129     <sonar-jacoco-listeners.version>2.4</sonar-jacoco-listeners.version>
130     <sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
131     <sonar.jacoco.reportPath>target/code-coverage/jacoco.exec</sonar.jacoco.reportPath>
132     <sonar.jacoco.itReportPath>target/code-coverage/jacoco-it.exec</sonar.jacoco.itReportPath>
133     <!-- Note: This list should match jacoco-maven-plugin's exclusion list below -->
134     <sonar.exclusions>**/gen/**,**/generated-sources/**,**/yang-gen**,**/pax/**</sonar.exclusions>
135   </properties>
136
137   <dependencyManagement>
138     <dependencies>
139
140       <dependency>
141         <groupId>org.opendaylight.odlparent</groupId>
142         <artifactId>odlparent-artifacts</artifactId>
143         <version>1.7.0-SNAPSHOT</version>
144         <scope>import</scope>
145         <type>pom</type>
146       </dependency>
147
148       <!-- Testing Dependencies -->
149       <!-- JUnit, Hamcrest, Mockito and PowerMock need to be kept in sync -->
150       <dependency>
151         <groupId>junit</groupId>
152         <artifactId>junit</artifactId>
153         <version>${junit.version}</version>
154         <scope>test</scope>
155       </dependency>
156       <dependency>
157         <groupId>junit</groupId>
158         <artifactId>junit-dep</artifactId>
159         <version>${junit.version}</version>
160         <scope>test</scope>
161       </dependency>
162       <dependency>
163          <groupId>org.skyscreamer</groupId>
164          <artifactId>jsonassert</artifactId>
165          <version>1.2.3</version>
166          <scope>test</scope>
167       </dependency>
168       <dependency>
169         <groupId>org.mockito</groupId>
170         <artifactId>mockito-all</artifactId>
171         <version>${mockito.version}</version>
172         <scope>test</scope>
173       </dependency>
174       <dependency>
175         <groupId>org.mockito</groupId>
176         <artifactId>mockito-core</artifactId>
177         <version>${mockito.version}</version>
178         <scope>test</scope>
179       </dependency>
180       <dependency>
181         <groupId>org.hamcrest</groupId>
182         <artifactId>hamcrest-core</artifactId>
183         <version>1.3</version>
184         <scope>test</scope>
185       </dependency>
186       <dependency>
187         <groupId>org.slf4j</groupId>
188         <artifactId>slf4j-simple</artifactId>
189         <version>${slf4j.version}</version>
190         <scope>test</scope>
191       </dependency>
192       <dependency>
193         <groupId>org.powermock</groupId>
194         <artifactId>powermock-api-mockito</artifactId>
195         <version>1.6.4</version>
196         <scope>test</scope>
197       </dependency>
198       <dependency>
199         <groupId>org.powermock</groupId>
200         <artifactId>powermock-api-support</artifactId>
201         <version>1.6.4</version>
202         <scope>test</scope>
203       </dependency>
204       <dependency>
205         <groupId>org.powermock</groupId>
206         <artifactId>powermock-core</artifactId>
207         <version>1.6.4</version>
208         <scope>test</scope>
209       </dependency>
210       <dependency>
211         <groupId>org.powermock</groupId>
212         <artifactId>powermock-module-junit4</artifactId>
213         <version>1.6.4</version>
214         <scope>test</scope>
215       </dependency>
216       <dependency>
217         <groupId>org.powermock</groupId>
218         <artifactId>powermock-reflect</artifactId>
219         <version>1.6.4</version>
220         <scope>test</scope>
221       </dependency>
222       <!-- Supporting Libraries -->
223       <dependency>
224         <groupId>org.slf4j</groupId>
225         <artifactId>jcl-over-slf4j</artifactId>
226         <version>${slf4j.version}</version>
227       </dependency>
228       <dependency>
229         <groupId>org.slf4j</groupId>
230         <artifactId>slf4j-api</artifactId>
231         <version>${slf4j.version}</version>
232       </dependency>
233       <dependency>
234         <groupId>org.slf4j</groupId>
235         <artifactId>slf4j-log4j12</artifactId>
236         <version>${slf4j.version}</version>
237       </dependency>
238       <dependency>
239         <groupId>org.slf4j</groupId>
240         <artifactId>log4j-over-slf4j</artifactId>
241         <version>${slf4j.version}</version>
242       </dependency>
243       <dependency>
244         <groupId>xml-apis</groupId>
245         <artifactId>xml-apis</artifactId>
246         <version>2.0.2</version>
247       </dependency>
248       <dependency>
249         <groupId>ch.qos.logback</groupId>
250         <artifactId>logback-core</artifactId>
251         <version>${logback.version}</version>
252       </dependency>
253       <dependency>
254         <groupId>ch.qos.logback</groupId>
255         <artifactId>logback-classic</artifactId>
256         <version>${logback.version}</version>
257       </dependency>
258       <dependency>
259         <groupId>com.google.guava</groupId>
260         <artifactId>guava</artifactId>
261         <version>${guava.version}</version>
262       </dependency>
263       <dependency>
264         <groupId>org.apache.commons</groupId>
265         <artifactId>commons-lang3</artifactId>
266         <version>3.4</version>
267       </dependency>
268       <dependency>
269         <groupId>commons-lang</groupId>
270         <artifactId>commons-lang</artifactId>
271         <version>2.6</version>
272       </dependency>
273       <dependency>
274         <groupId>commons-codec</groupId>
275         <artifactId>commons-codec</artifactId>
276         <version>1.10</version>
277       </dependency>
278       <!-- Jersey for JAXRS -->
279       <dependency>
280         <groupId>javax.ws.rs</groupId>
281         <artifactId>javax.ws.rs-api</artifactId>
282         <version>2.0.1</version>
283       </dependency>
284       <dependency>
285         <groupId>org.glassfish.jersey.bundles.repackaged</groupId>
286         <artifactId>jersey-guava</artifactId>
287         <version>2.8</version>
288       </dependency>
289       <dependency>
290         <groupId>com.eclipsesource.jaxrs</groupId>
291         <artifactId>jersey-all</artifactId>
292         <version>2.8</version>
293       </dependency>
294
295       <!-- servlet 3.x support -->
296       <dependency>
297         <groupId>org.glassfish.jersey.containers</groupId>
298         <artifactId>jersey-container-servlet</artifactId>
299         <version>2.8</version>
300       </dependency>
301       <dependency>
302         <groupId>org.apache.geronimo.bundles</groupId>
303         <artifactId>json</artifactId>
304         <version>20090211_1</version>
305       </dependency>
306       <!-- FIXME : remove all dependencies for jersey 1.7 -->
307       <dependency>
308         <groupId>com.sun.jersey</groupId>
309         <artifactId>jersey-core</artifactId>
310         <version>${jersey.version}</version>
311       </dependency>
312       <dependency>
313         <groupId>com.sun.jersey</groupId>
314         <artifactId>jersey-json</artifactId>
315         <version>${jersey.version}</version>
316       </dependency>
317       <dependency>
318         <groupId>com.sun.jersey</groupId>
319         <artifactId>jersey-server</artifactId>
320         <version>${jersey.version}</version>
321       </dependency>
322       <dependency>
323         <groupId>com.sun.jersey</groupId>
324         <artifactId>jersey-servlet</artifactId>
325         <version>${jersey.version}</version>
326       </dependency>
327       <dependency>
328         <groupId>com.sun.jersey.jersey-test-framework</groupId>
329         <artifactId>jersey-test-framework-grizzly2</artifactId>
330         <version>${jersey.version}</version>
331         <scope>test</scope>
332       </dependency>
333       <dependency>
334         <groupId>com.sun.jersey</groupId>
335         <artifactId>jersey-client</artifactId>
336         <version>${jersey.version}</version>
337       </dependency>
338       <dependency>
339         <groupId>org.opendaylight.controller.thirdparty</groupId>
340         <artifactId>com.sun.jersey.jersey-servlet</artifactId>
341         <version>1.17</version>
342       </dependency>
343       <dependency>
344         <groupId>org.apache.shiro</groupId>
345         <artifactId>shiro-core</artifactId>
346         <version>1.2.4</version>
347       </dependency>
348       <dependency>
349         <groupId>org.apache.shiro</groupId>
350         <artifactId>shiro-web</artifactId>
351         <version>1.2.4</version>
352       </dependency>
353
354       <!-- Plugin integration -->
355       <dependency>
356         <groupId>net.java.dev.stax-utils</groupId>
357         <artifactId>stax-utils</artifactId>
358         <version>20070216</version>
359       </dependency>
360       <dependency>
361         <groupId>org.sonatype.plexus</groupId>
362         <artifactId>plexus-build-api</artifactId>
363         <version>0.0.7</version>
364       </dependency>
365       <dependency>
366         <groupId>org.codehaus.plexus</groupId>
367         <artifactId>plexus-slf4j-logging</artifactId>
368         <version>1.1</version>
369       </dependency>
370       <dependency>
371         <groupId>com.fasterxml.jackson.core</groupId>
372         <artifactId>jackson-annotations</artifactId>
373         <version>${jackson.version}</version>
374       </dependency>
375       <dependency>
376         <groupId>com.fasterxml.jackson.core</groupId>
377         <artifactId>jackson-core</artifactId>
378         <version>${jackson.version}</version>
379       </dependency>
380       <dependency>
381         <groupId>com.fasterxml.jackson.core</groupId>
382         <artifactId>jackson-databind</artifactId>
383         <version>${jackson.version}</version>
384       </dependency>
385       <dependency>
386         <groupId>com.fasterxml.jackson.datatype</groupId>
387         <artifactId>jackson-datatype-json-org</artifactId>
388         <version>${jackson.version}</version>
389       </dependency>
390       <!-- TODO do we really need resteasy ? -->
391       <dependency>
392           <groupId>org.jboss.resteasy</groupId>
393           <artifactId>jaxrs-api</artifactId>
394           <version>3.0.4.Final</version>
395       </dependency>
396
397       <dependency>
398         <groupId>com.fasterxml.jackson.jaxrs</groupId>
399         <artifactId>jackson-jaxrs-base</artifactId>
400         <version>${jackson.version}</version>
401       </dependency>
402       <dependency>
403         <groupId>com.fasterxml.jackson.jaxrs</groupId>
404         <artifactId>jackson-jaxrs-json-provider</artifactId>
405         <version>${jackson.version}</version>
406       </dependency>
407       <dependency>
408         <groupId>com.fasterxml.jackson.module</groupId>
409         <artifactId>jackson-module-jaxb-annotations</artifactId>
410         <version>${jackson.version}</version>
411       </dependency>
412       <dependency>
413         <groupId>com.sun.xml.txw2</groupId>
414         <artifactId>txw2</artifactId>
415         <version>20110809</version>
416       </dependency>
417       <dependency>
418         <groupId>com.github.romix</groupId>
419         <artifactId>java-concurrent-hash-trie-map</artifactId>
420         <version>0.2.23</version>
421       </dependency>
422       <dependency>
423         <groupId>com.google.code.findbugs</groupId>
424         <artifactId>jsr305</artifactId>
425         <version>${jsr305.api.version}</version>
426       </dependency>
427       <dependency>
428         <groupId>com.google.code.gson</groupId>
429         <artifactId>gson</artifactId>
430         <version>2.3.1</version>
431       </dependency>
432       <dependency>
433         <groupId>commons-fileupload</groupId>
434         <artifactId>commons-fileupload</artifactId>
435         <version>1.3.1</version>
436       </dependency>
437       <dependency>
438         <groupId>commons-io</groupId>
439         <artifactId>commons-io</artifactId>
440         <version>2.4</version>
441       </dependency>
442       <dependency>
443         <groupId>commons-net</groupId>
444         <artifactId>commons-net</artifactId>
445         <version>3.4</version>
446       </dependency>
447       <dependency>
448         <groupId>eclipselink</groupId>
449         <artifactId>javax.persistence</artifactId>
450         <version>2.0.4.v201112161009</version>
451       </dependency>
452       <dependency>
453         <groupId>eclipselink</groupId>
454         <artifactId>javax.resource</artifactId>
455         <version>1.5.0.v200906010428</version>
456       </dependency>
457       <dependency>
458         <groupId>equinoxSDK381</groupId>
459         <artifactId>javax.servlet</artifactId>
460         <version>3.0.0.v201112011016</version>
461       </dependency>
462       <dependency>
463         <groupId>equinoxSDK381</groupId>
464         <artifactId>javax.servlet.jsp</artifactId>
465         <version>2.2.0.v201112011158</version>
466       </dependency>
467       <dependency>
468         <groupId>equinoxSDK381</groupId>
469         <artifactId>org.apache.felix.gogo.command</artifactId>
470         <version>0.8.0.v201108120515</version>
471       </dependency>
472       <dependency>
473         <groupId>equinoxSDK381</groupId>
474         <artifactId>org.apache.felix.gogo.runtime</artifactId>
475         <version>0.8.0.v201108120515</version>
476       </dependency>
477       <dependency>
478         <groupId>equinoxSDK381</groupId>
479         <artifactId>org.apache.felix.gogo.shell</artifactId>
480         <version>0.8.0.v201110170705</version>
481       </dependency>
482       <dependency>
483         <groupId>equinoxSDK381</groupId>
484         <artifactId>org.eclipse.equinox.cm</artifactId>
485         <version>1.0.400.v20120522-1841</version>
486       </dependency>
487       <dependency>
488         <groupId>equinoxSDK381</groupId>
489         <artifactId>org.eclipse.equinox.console</artifactId>
490         <version>1.0.0.v20120522-1841</version>
491       </dependency>
492       <dependency>
493         <groupId>equinoxSDK381</groupId>
494         <artifactId>org.eclipse.equinox.ds</artifactId>
495         <version>1.4.0.v20120522-1841</version>
496       </dependency>
497       <dependency>
498         <groupId>equinoxSDK381</groupId>
499         <artifactId>org.eclipse.equinox.launcher</artifactId>
500         <version>1.3.0.v20120522-1813</version>
501       </dependency>
502       <dependency>
503         <groupId>equinoxSDK381</groupId>
504         <artifactId>org.eclipse.equinox.util</artifactId>
505         <version>1.0.400.v20120522-2049</version>
506       </dependency>
507       <dependency>
508         <groupId>equinoxSDK381</groupId>
509         <artifactId>org.eclipse.osgi.services</artifactId>
510         <version>3.3.100.v20120522-1822</version>
511       </dependency>
512
513       <dependency>
514         <groupId>org.eclipse.tycho</groupId>
515         <artifactId>org.eclipse.osgi</artifactId>
516         <version>3.9.1.v20130814-1242</version>
517       </dependency>
518       <!-- FIXME: remove once all users migrate to org.eclipse.tycho -->
519       <dependency>
520         <groupId>equinoxSDK381</groupId>
521         <artifactId>org.eclipse.osgi</artifactId>
522         <version>3.8.1.v20120830-144521</version>
523       </dependency>
524
525       <!-- Gemini Web -->
526       <dependency>
527         <groupId>geminiweb</groupId>
528         <artifactId>org.eclipse.gemini.web.core</artifactId>
529         <version>2.2.0.RELEASE</version>
530       </dependency>
531       <dependency>
532         <groupId>geminiweb</groupId>
533         <artifactId>org.eclipse.gemini.web.extender</artifactId>
534         <version>2.2.0.RELEASE</version>
535       </dependency>
536       <dependency>
537         <groupId>geminiweb</groupId>
538         <artifactId>org.eclipse.gemini.web.tomcat</artifactId>
539         <version>2.2.0.RELEASE</version>
540       </dependency>
541       <dependency>
542         <groupId>geminiweb</groupId>
543         <artifactId>org.eclipse.virgo.kernel.equinox.extensions</artifactId>
544         <version>3.6.0.RELEASE</version>
545       </dependency>
546       <dependency>
547         <groupId>geminiweb</groupId>
548         <artifactId>org.eclipse.virgo.util.common</artifactId>
549         <version>3.6.0.RELEASE</version>
550       </dependency>
551       <dependency>
552         <groupId>geminiweb</groupId>
553         <artifactId>org.eclipse.virgo.util.io</artifactId>
554         <version>3.6.0.RELEASE</version>
555       </dependency>
556       <dependency>
557         <groupId>geminiweb</groupId>
558         <artifactId>org.eclipse.virgo.util.math</artifactId>
559         <version>3.6.0.RELEASE</version>
560       </dependency>
561       <dependency>
562         <groupId>geminiweb</groupId>
563         <artifactId>org.eclipse.virgo.util.osgi</artifactId>
564         <version>3.6.0.RELEASE</version>
565       </dependency>
566       <dependency>
567         <groupId>geminiweb</groupId>
568         <artifactId>org.eclipse.virgo.util.osgi.manifest</artifactId>
569         <version>3.6.0.RELEASE</version>
570       </dependency>
571       <dependency>
572         <groupId>geminiweb</groupId>
573         <artifactId>org.eclipse.virgo.util.parser.manifest</artifactId>
574         <version>3.6.0.RELEASE</version>
575       </dependency>
576       <!-- Netty -->
577       <dependency>
578         <groupId>io.netty</groupId>
579         <artifactId>netty-all</artifactId>
580         <!-- If these are updated, the version in features.xml needs to be changed too -->
581         <version>4.0.36.Final</version>
582       </dependency>
583       <dependency>
584         <groupId>io.netty</groupId>
585         <artifactId>netty-buffer</artifactId>
586         <version>4.0.36.Final</version>
587       </dependency>
588       <dependency>
589         <groupId>io.netty</groupId>
590         <artifactId>netty-codec</artifactId>
591         <version>4.0.36.Final</version>
592       </dependency>
593       <dependency>
594         <groupId>io.netty</groupId>
595         <artifactId>netty-codec-http</artifactId>
596         <version>4.0.36.Final</version>
597       </dependency>
598       <dependency>
599         <groupId>io.netty</groupId>
600         <artifactId>netty-common</artifactId>
601         <version>4.0.36.Final</version>
602       </dependency>
603       <dependency>
604         <groupId>io.netty</groupId>
605         <artifactId>netty-handler</artifactId>
606         <version>4.0.36.Final</version>
607       </dependency>
608       <dependency>
609         <groupId>io.netty</groupId>
610         <artifactId>netty-transport</artifactId>
611         <version>4.0.36.Final</version>
612       </dependency>
613       <!-- Here we need to define all available native epoll implementations; we can't limit ourselves to the build
614       platform and we can't require the build platform to have an implementation (e.g. OS X) -->
615       <dependency>
616         <groupId>io.netty</groupId>
617         <artifactId>netty-transport-native-epoll</artifactId>
618         <classifier>linux-x86_64</classifier>
619         <version>4.0.36.Final</version>
620       </dependency>
621       <dependency>
622         <groupId>javax.ws.rs</groupId>
623         <artifactId>jsr311-api</artifactId>
624         <version>1.1.1</version>
625       </dependency>
626       <dependency>
627         <groupId>orbit</groupId>
628         <artifactId>javax.activation</artifactId>
629         <version>1.1.0.v201211130549</version>
630       </dependency>
631       <dependency>
632         <groupId>orbit</groupId>
633         <artifactId>javax.annotation</artifactId>
634         <version>1.1.0.v201209060031</version>
635       </dependency>
636       <dependency>
637         <groupId>orbit</groupId>
638         <artifactId>javax.ejb</artifactId>
639         <version>3.1.1.v201204261316</version>
640       </dependency>
641       <dependency>
642         <groupId>orbit</groupId>
643         <artifactId>javax.el</artifactId>
644         <version>2.2.0.v201108011116</version>
645       </dependency>
646       <dependency>
647         <groupId>orbit</groupId>
648         <artifactId>javax.mail.glassfish</artifactId>
649         <version>1.4.1.v201108011116</version>
650       </dependency>
651       <dependency>
652         <groupId>javax.servlet</groupId>
653         <artifactId>javax.servlet-api</artifactId>
654         <version>3.0.1</version>
655       </dependency>
656       <dependency>
657         <groupId>orbit</groupId>
658         <artifactId>javax.servlet.jsp.jstl</artifactId>
659         <version>1.2.0.v201105211821</version>
660       </dependency>
661       <dependency>
662         <groupId>orbit</groupId>
663         <artifactId>javax.servlet.jsp.jstl.impl</artifactId>
664         <version>1.2.0.v201210211230</version>
665       </dependency>
666       <dependency>
667         <groupId>orbit</groupId>
668         <artifactId>javax.xml.rpc</artifactId>
669         <version>1.1.0.v201005080400</version>
670       </dependency>
671       <dependency>
672         <groupId>orbit</groupId>
673         <artifactId>org.apache.catalina</artifactId>
674         <version>7.0.53.v201406061610</version>
675       </dependency>
676       <dependency>
677         <groupId>orbit</groupId>
678         <artifactId>org.apache.catalina.ha</artifactId>
679         <version>7.0.53.v201406070630</version>
680       </dependency>
681       <dependency>
682         <groupId>orbit</groupId>
683         <artifactId>org.apache.catalina.tribes</artifactId>
684         <version>7.0.53.v201406070630</version>
685       </dependency>
686       <dependency>
687         <groupId>orbit</groupId>
688         <artifactId>org.apache.coyote</artifactId>
689         <version>7.0.53.v201406070630</version>
690       </dependency>
691       <dependency>
692         <groupId>orbit</groupId>
693         <artifactId>org.apache.el</artifactId>
694         <version>7.0.53.v201406060720</version>
695       </dependency>
696       <dependency>
697         <groupId>orbit</groupId>
698         <artifactId>org.apache.jasper</artifactId>
699         <version>7.0.53.v201406070630</version>
700       </dependency>
701       <dependency>
702         <groupId>orbit</groupId>
703         <artifactId>org.apache.juli.extras</artifactId>
704         <version>7.0.53.v201406060720</version>
705       </dependency>
706       <dependency>
707         <groupId>orbit</groupId>
708         <artifactId>org.apache.tomcat.api</artifactId>
709         <version>7.0.53.v201406060720</version>
710       </dependency>
711       <dependency>
712         <groupId>orbit</groupId>
713         <artifactId>org.apache.tomcat.util</artifactId>
714         <version>7.0.53.v201406070630</version>
715       </dependency>
716       <dependency>
717         <groupId>org.aopalliance</groupId>
718         <artifactId>com.springsource.org.aopalliance</artifactId>
719         <version>1.0.0</version>
720       </dependency>
721       <dependency>
722         <groupId>org.apache.felix</groupId>
723         <artifactId>org.apache.felix.dependencymanager</artifactId>
724         <version>3.1.0</version>
725       </dependency>
726       <dependency>
727         <groupId>org.apache.felix</groupId>
728         <artifactId>org.apache.felix.dependencymanager.shell</artifactId>
729         <version>3.0.1</version>
730       </dependency>
731       <dependency>
732         <groupId>org.apache.felix</groupId>
733         <artifactId>org.apache.felix.fileinstall</artifactId>
734         <version>3.1.6</version>
735       </dependency>
736       <!-- felix webconsole -->
737       <dependency>
738         <groupId>org.apache.felix</groupId>
739         <artifactId>org.apache.felix.webconsole</artifactId>
740         <version>4.2.0</version>
741         <!-- the all bundle includes all the necessary plugins -->
742         <classifier>all</classifier>
743       </dependency>
744       <dependency>
745         <groupId>org.bouncycastle</groupId>
746         <artifactId>bcpkix-jdk15on</artifactId>
747         <version>${bouncycastle.version}</version>
748       </dependency>
749       <dependency>
750         <groupId>org.bouncycastle</groupId>
751         <artifactId>bcprov-jdk15on</artifactId>
752         <version>${bouncycastle.version}</version>
753       </dependency>
754       <dependency>
755         <groupId>org.codehaus.enunciate</groupId>
756         <artifactId>enunciate-core-annotations</artifactId>
757         <version>${enunciate.version}</version>
758       </dependency>
759       <dependency>
760         <groupId>com.webcohesion.enunciate</groupId>
761         <artifactId>enunciate-core-annotations</artifactId>
762         <version>2.1.1</version>
763       </dependency>
764       <dependency>
765         <groupId>org.codehaus.jettison</groupId>
766         <artifactId>jettison</artifactId>
767         <version>${jettison.version}</version>
768       </dependency>
769       <!-- equinox http service bridge -->
770       <dependency>
771         <groupId>org.eclipse.equinox.http</groupId>
772         <artifactId>servlet</artifactId>
773         <version>1.0.0-v20070606</version>
774       </dependency>
775       <!-- To upgrade org.eclipse.persistence dependencies to 2.6.0+, we need to ensure all downstreams consumers
776          pull in javax.validation first:
777          http://stackoverflow.com/questions/28568154/how-to-get-eclipselink-2-6-0-m3-working-with-jersey-1-18-3 -->
778       <dependency>
779         <groupId>org.eclipse.persistence</groupId>
780         <artifactId>org.eclipse.persistence.antlr</artifactId>
781         <version>2.5.2</version>
782       </dependency>
783       <dependency>
784         <groupId>org.eclipse.persistence</groupId>
785         <artifactId>org.eclipse.persistence.core</artifactId>
786         <version>2.5.2</version>
787       </dependency>
788       <dependency>
789         <groupId>org.eclipse.persistence</groupId>
790         <artifactId>org.eclipse.persistence.moxy</artifactId>
791         <version>2.5.2</version>
792       </dependency>
793       <dependency>
794         <groupId>javax.validation</groupId>
795         <artifactId>validation-api</artifactId>
796         <version>1.1.0.Final</version>
797       </dependency>
798       <dependency>
799         <groupId>org.javassist</groupId>
800         <artifactId>javassist</artifactId>
801         <version>${javassist.version}</version>
802       </dependency>
803       <dependency>
804         <groupId>org.jboss.spec.javax.transaction</groupId>
805         <artifactId>jboss-transaction-api_1.1_spec</artifactId>
806         <version>1.0.1.Final</version>
807       </dependency>
808       <dependency>
809         <groupId>org.jolokia</groupId>
810         <artifactId>jolokia-osgi</artifactId>
811         <version>1.3.3</version>
812       </dependency>
813       <dependency>
814         <groupId>org.json</groupId>
815         <artifactId>json</artifactId>
816         <version>${org.json.version}</version>
817       </dependency>
818       <dependency>
819         <groupId>org.osgi</groupId>
820         <artifactId>org.osgi.compendium</artifactId>
821         <version>5.0.0</version>
822         <scope>provided</scope>
823       </dependency>
824       <dependency>
825         <groupId>org.osgi</groupId>
826         <artifactId>org.osgi.core</artifactId>
827         <version>${osgi.core.version}</version>
828         <scope>provided</scope>
829       </dependency>
830       <dependency>
831         <groupId>org.ow2.asm</groupId>
832         <artifactId>asm-all</artifactId>
833         <version>5.0.4</version>
834       </dependency>
835       <!-- Visual VM hook -->
836       <dependency>
837         <groupId>org.ow2.chameleon.management</groupId>
838         <artifactId>chameleon-mbeans</artifactId>
839         <version>1.0.0</version>
840       </dependency>
841       <dependency>
842         <groupId>org.springframework</groupId>
843         <artifactId>spring-aop</artifactId>
844         <version>3.2.14.RELEASE</version>
845       </dependency>
846       <dependency>
847         <groupId>org.springframework</groupId>
848         <artifactId>spring-beans</artifactId>
849         <version>3.2.14.RELEASE</version>
850       </dependency>
851       <dependency>
852         <groupId>org.springframework</groupId>
853         <artifactId>spring-context</artifactId>
854         <version>3.2.14.RELEASE</version>
855       </dependency>
856       <dependency>
857         <groupId>org.springframework</groupId>
858         <artifactId>spring-core</artifactId>
859         <version>3.2.14.RELEASE</version>
860       </dependency>
861       <dependency>
862         <groupId>org.springframework</groupId>
863         <artifactId>spring-expression</artifactId>
864         <version>3.2.14.RELEASE</version>
865       </dependency>
866       <dependency>
867         <groupId>org.springframework</groupId>
868         <artifactId>spring-tx</artifactId>
869         <version>3.2.14.RELEASE</version>
870       </dependency>
871       <dependency>
872         <groupId>org.springframework</groupId>
873         <artifactId>spring-web</artifactId>
874         <version>3.2.14.RELEASE</version>
875       </dependency>
876       <dependency>
877         <groupId>org.springframework</groupId>
878         <artifactId>spring-webmvc</artifactId>
879         <version>3.2.14.RELEASE</version>
880       </dependency>
881       <!-- Spring security -->
882       <dependency>
883         <groupId>org.springframework.security</groupId>
884         <artifactId>spring-security-config</artifactId>
885         <version>3.2.8.RELEASE</version>
886       </dependency>
887       <dependency>
888         <groupId>org.springframework.security</groupId>
889         <artifactId>spring-security-core</artifactId>
890         <version>3.2.8.RELEASE</version>
891       </dependency>
892       <dependency>
893         <groupId>org.springframework.security</groupId>
894         <artifactId>spring-security-taglibs</artifactId>
895         <version>3.2.8.RELEASE</version>
896       </dependency>
897       <dependency>
898         <groupId>org.springframework.security</groupId>
899         <artifactId>spring-security-web</artifactId>
900         <version>3.2.8.RELEASE</version>
901       </dependency>
902       <dependency>
903         <groupId>virgomirror</groupId>
904         <artifactId>org.eclipse.jdt.core.compiler.batch</artifactId>
905         <version>3.8.0.I20120518-2145</version>
906       </dependency>
907
908       <!-- Configuration library -->
909       <!-- This needs to be kept in sync with the version used by akka -->
910       <dependency>
911         <groupId>com.typesafe</groupId>
912         <artifactId>config</artifactId>
913         <version>1.3.0</version>
914       </dependency>
915
916       <!-- Akka -->
917       <dependency>
918         <groupId>com.typesafe.akka</groupId>
919         <artifactId>akka-actor_${scala.version}</artifactId>
920         <version>${akka.version}</version>
921       </dependency>
922       <dependency>
923         <groupId>com.typesafe.akka</groupId>
924         <artifactId>akka-cluster_${scala.version}</artifactId>
925         <version>${akka.version}</version>
926       </dependency>
927       <dependency>
928         <groupId>com.typesafe.akka</groupId>
929         <artifactId>akka-persistence_${scala.version}</artifactId>
930         <version>${akka.version}</version>
931       </dependency>
932       <dependency>
933         <groupId>com.typesafe.akka</groupId>
934         <artifactId>akka-protobuf_${scala.version}</artifactId>
935         <version>${akka.version}</version>
936       </dependency>
937       <dependency>
938         <groupId>com.typesafe.akka</groupId>
939         <artifactId>akka-remote_${scala.version}</artifactId>
940         <version>${akka.version}</version>
941       </dependency>
942       <dependency>
943         <groupId>com.typesafe.akka</groupId>
944         <artifactId>akka-testkit_${scala.version}</artifactId>
945         <version>${akka.version}</version>
946       </dependency>
947       <dependency>
948         <groupId>com.typesafe.akka</groupId>
949         <artifactId>akka-osgi_${scala.version}</artifactId>
950         <version>${akka.version}</version>
951       </dependency>
952       <dependency>
953         <groupId>com.typesafe.akka</groupId>
954         <artifactId>akka-slf4j_${scala.version}</artifactId>
955         <version>${akka.version}</version>
956       </dependency>
957       <dependency>
958         <groupId>org.scala-lang.modules</groupId>
959         <artifactId>scala-java8-compat_${scala.version}</artifactId>
960         <version>0.7.0</version>
961       </dependency>
962       <dependency>
963         <groupId>org.iq80.leveldb</groupId>
964         <artifactId>leveldb</artifactId>
965         <version>${leveldb.version}</version>
966       </dependency>
967       <dependency>
968         <groupId>org.fusesource.leveldbjni</groupId>
969         <artifactId>leveldbjni-all</artifactId>
970         <version>1.8-odl</version>
971       </dependency>
972       <dependency>
973         <groupId>org.uncommons.maths</groupId>
974         <artifactId>uncommons-maths</artifactId>
975         <version>1.2.2a</version>
976       </dependency>
977       <dependency>
978         <groupId>com.google.protobuf</groupId>
979         <artifactId>protobuf-java</artifactId>
980         <version>2.5.0</version>
981       </dependency>
982
983       <!-- Scala -->
984       <dependency>
985         <groupId>org.scala-lang</groupId>
986         <artifactId>scala-library</artifactId>
987         <version>${scala.version}.${scala.micro.version}</version>
988       </dependency>
989       <dependency>
990         <groupId>org.scala-lang</groupId>
991         <artifactId>scala-reflect</artifactId>
992         <version>${scala.version}.${scala.micro.version}</version>
993       </dependency>
994
995       <!-- LMAX Disruptor -->
996       <dependency>
997         <groupId>com.lmax</groupId>
998         <artifactId>disruptor</artifactId>
999         <!-- If this is updated, the version in features.xml needs to be changed too -->
1000         <version>3.3.2</version>
1001       </dependency>
1002
1003       <!-- Add Pax Exam -->
1004       <dependency>
1005         <groupId>org.ops4j.pax.exam</groupId>
1006         <artifactId>pax-exam</artifactId>
1007         <version>${exam.version}</version>
1008         <scope>test</scope>
1009       </dependency>
1010       <dependency>
1011         <groupId>org.ops4j.pax.exam</groupId>
1012         <artifactId>pax-exam-container-karaf</artifactId>
1013         <version>${exam.version}</version>
1014         <scope>test</scope>
1015       </dependency>
1016       <dependency>
1017         <groupId>org.ops4j.pax.exam</groupId>
1018         <artifactId>pax-exam-container-native</artifactId>
1019         <version>${exam.version}</version>
1020         <scope>test</scope>
1021       </dependency>
1022       <dependency>
1023         <groupId>org.ops4j.pax.exam</groupId>
1024         <artifactId>pax-exam-junit4</artifactId>
1025         <version>${exam.version}</version>
1026         <scope>test</scope>
1027       </dependency>
1028       <dependency>
1029         <groupId>org.ops4j.pax.exam</groupId>
1030         <artifactId>pax-exam-link-mvn</artifactId>
1031         <version>${exam.version}</version>
1032         <scope>test</scope>
1033       </dependency>
1034
1035       <dependency>
1036         <groupId>org.ops4j.pax.url</groupId>
1037         <artifactId>pax-url-aether</artifactId>
1038         <version>1.5.0</version>
1039         <scope>test</scope>
1040       </dependency>
1041       <dependency>
1042         <groupId>org.ops4j.pax.url</groupId>
1043         <artifactId>pax-url-wrap</artifactId>
1044         <version>1.5.0</version>
1045       </dependency>
1046       <dependency>
1047         <groupId>org.springframework.osgi</groupId>
1048         <artifactId>spring-osgi-mock</artifactId>
1049         <version>1.2.1</version>
1050         <scope>test</scope>
1051       </dependency>
1052       <dependency>
1053         <groupId>xmlunit</groupId>
1054         <artifactId>xmlunit</artifactId>
1055         <version>1.6</version>
1056         <scope>test</scope>
1057       </dependency>
1058       <dependency>
1059         <groupId>org.eclipse.jetty</groupId>
1060         <artifactId>jetty-servlets</artifactId>
1061         <version>8.1.14.v20131031</version>
1062       </dependency>
1063       <dependency>
1064         <groupId>org.apache.aries.blueprint</groupId>
1065         <artifactId>org.apache.aries.blueprint.core</artifactId>
1066         <version>1.4.2</version>
1067       </dependency>
1068     </dependencies>
1069   </dependencyManagement>
1070
1071   <build>
1072     <pluginManagement>
1073       <plugins>
1074         <!-- Official maven plugins, alpha-sorted by artifactId.
1075              We do not need to specify the groupId. -->
1076         <plugin>
1077           <artifactId>maven-antrun-plugin</artifactId>
1078           <version>${maven.antrun.plugin.version}</version>
1079         </plugin>
1080         <plugin>
1081           <artifactId>maven-checkstyle-plugin</artifactId>
1082           <version>${checkstyle.version}</version>
1083           <dependencies>
1084             <dependency>
1085               <groupId>org.opendaylight.odlparent</groupId>
1086               <artifactId>checkstyle</artifactId>
1087               <version>${odl.checkstyle.version}</version>
1088             </dependency>
1089             <dependency>
1090               <groupId>org.opendaylight.odlparent</groupId>
1091               <artifactId>odl-license</artifactId>
1092               <version>0.1.0-SNAPSHOT</version>
1093             </dependency>
1094           </dependencies>
1095           <configuration>
1096             <configLocation>odl_checks.xml</configLocation>
1097             <!-- <sourceDirectory> is needed so that checkstyle ignores the
1098                  generated sources directory -->
1099             <sourceDirectory>${project.build.sourceDirectory}</sourceDirectory>
1100             <excludes>
1101               org/opendaylight/yang/gen/**,
1102               **/protobuff/messages/**,
1103               **/thrift/gen/*.java
1104             </excludes>
1105             <failsOnError>false</failsOnError>
1106             <consoleOutput>true</consoleOutput>
1107           </configuration>
1108           <executions>
1109             <execution>
1110               <id>check-license</id>
1111               <goals>
1112                 <goal>check</goal>
1113               </goals>
1114               <phase>process-sources</phase>
1115               <configuration>
1116                 <configLocation>check-license.xml</configLocation>
1117                 <includeResources>false</includeResources>
1118                 <includeTestResources>false</includeTestResources>
1119                 <sourceDirectory>${project.build.sourceDirectory}</sourceDirectory>
1120                 <excludes>
1121                   org/opendaylight/yang/gen/**,
1122                   **/protobuff/messages/**,
1123                   **/thrift/gen/*.java
1124                 </excludes>
1125                 <failsOnError>false</failsOnError>
1126                 <consoleOutput>true</consoleOutput>
1127               </configuration>
1128             </execution>
1129             <execution>
1130               <goals>
1131                 <goal>check</goal>
1132               </goals>
1133               <phase>process-sources</phase>
1134             </execution>
1135           </executions>
1136         </plugin>
1137         <plugin>
1138           <artifactId>maven-compiler-plugin</artifactId>
1139           <version>${maven.compile.plugin.version}</version>
1140           <configuration>
1141             <source>1.8</source>
1142             <target>1.8</target>
1143           </configuration>
1144         </plugin>
1145         <plugin>
1146           <artifactId>maven-enforcer-plugin</artifactId>
1147           <version>${enforcer.version}</version>
1148         </plugin>
1149         <plugin>
1150           <artifactId>maven-failsafe-plugin</artifactId>
1151           <version>${failsafe.version}</version>
1152         </plugin>
1153         <plugin>
1154           <artifactId>maven-invoker-plugin</artifactId>
1155           <version>2.0.0</version>
1156         </plugin>
1157         <plugin>
1158           <artifactId>maven-jar-plugin</artifactId>
1159           <version>${maven.jar.version}</version>
1160         </plugin>
1161         <plugin>
1162           <artifactId>maven-release-plugin</artifactId>
1163           <version>${maven.release.version}</version>
1164         </plugin>
1165         <plugin>
1166           <artifactId>maven-dependency-plugin</artifactId>
1167           <version>2.10</version>
1168           <executions>
1169             <execution>
1170               <id>unpack-license</id>
1171               <phase>generate-resources</phase>
1172               <goals><goal>unpack</goal></goals>
1173               <configuration>
1174                 <artifactItems>
1175                   <artifactItem>
1176                     <groupId>org.opendaylight.odlparent</groupId>
1177                     <artifactId>odl-license</artifactId>
1178                     <version>0.1.0-SNAPSHOT</version>
1179                   </artifactItem>
1180                 </artifactItems>
1181                 <outputDirectory>${project.build.outputDirectory}</outputDirectory>
1182                 <excludes>META-INF/**</excludes>
1183               </configuration>
1184             </execution>
1185           </executions>
1186         </plugin>
1187
1188         <plugin>
1189           <artifactId>maven-plugin-plugin</artifactId>
1190           <version>${maven.plugin.version}</version>
1191         </plugin>
1192
1193         <plugin>
1194           <artifactId>maven-resources-plugin</artifactId>
1195           <version>2.7</version>
1196         </plugin>
1197         <plugin>
1198           <artifactId>maven-shade-plugin</artifactId>
1199           <version>2.4.1</version>
1200         </plugin>
1201         <plugin>
1202           <artifactId>maven-site-plugin</artifactId>
1203           <version>3.4</version>
1204         </plugin>
1205         <plugin>
1206           <artifactId>maven-source-plugin</artifactId>
1207           <version>2.4</version>
1208           <executions>
1209             <execution>
1210               <id>attach-sources</id>
1211               <goals>
1212                 <goal>jar-no-fork</goal>
1213               </goals>
1214             </execution>
1215           </executions>
1216         </plugin>
1217         <plugin>
1218           <artifactId>maven-surefire-plugin</artifactId>
1219           <version>${maven.surefire.version}</version>
1220           <configuration>
1221             <redirectTestOutputToFile>true</redirectTestOutputToFile>
1222           </configuration>
1223         </plugin>
1224
1225         <!-- Third-party plugins, grouped by groupId, alpha-sorted by artifactId -->
1226         <plugin>
1227           <groupId>org.apache.felix</groupId>
1228           <artifactId>maven-bundle-plugin</artifactId>
1229           <version>${maven.bundle.version}</version>
1230           <extensions>true</extensions>
1231         </plugin>
1232
1233         <plugin>
1234           <groupId>org.apache.karaf.tooling</groupId>
1235           <artifactId>karaf-maven-plugin</artifactId>
1236           <version>${karaf.version}</version>
1237         </plugin>
1238
1239         <plugin>
1240           <groupId>org.apache.servicemix.tooling</groupId>
1241           <artifactId>depends-maven-plugin</artifactId>
1242           <version>1.3.1</version>
1243           <executions>
1244             <execution>
1245               <id>generate-depends-file</id>
1246               <goals>
1247                 <goal>generate-depends-file</goal>
1248               </goals>
1249             </execution>
1250           </executions>
1251         </plugin>
1252
1253         <plugin>
1254           <groupId>org.codehaus.enunciate</groupId>
1255           <artifactId>maven-enunciate-plugin</artifactId>
1256           <version>${enunciate.version}</version>
1257         </plugin>
1258         <plugin>
1259           <groupId>com.webcohesion.enunciate</groupId>
1260           <artifactId>enunciate-maven-plugin</artifactId>
1261           <version>2.1.1</version>
1262         </plugin>
1263         <plugin>
1264           <groupId>org.codehaus.groovy.maven</groupId>
1265           <artifactId>gmaven-plugin</artifactId>
1266           <version>${gmaven.plugin.version}</version>
1267         </plugin>
1268         <plugin>
1269           <groupId>org.codehaus.mojo</groupId>
1270           <artifactId>build-helper-maven-plugin</artifactId>
1271           <version>1.9.1</version>
1272         </plugin>
1273         <plugin>
1274           <groupId>org.codehaus.mojo</groupId>
1275           <artifactId>findbugs-maven-plugin</artifactId>
1276           <version>3.0.3</version>
1277         </plugin>
1278         <plugin>
1279           <groupId>org.codehaus.mojo</groupId>
1280           <artifactId>properties-maven-plugin</artifactId>
1281           <version>${propertymavenplugin.version}</version>
1282         </plugin>
1283
1284         <plugin>
1285           <groupId>org.eclipse.m2e</groupId>
1286           <artifactId>lifecycle-mapping</artifactId>
1287           <version>1.0.0</version>
1288           <configuration>
1289             <lifecycleMappingMetadata>
1290               <pluginExecutions>
1291                 <pluginExecution>
1292                   <pluginExecutionFilter>
1293                     <groupId>org.apache.felix</groupId>
1294                     <artifactId>maven-bundle-plugin</artifactId>
1295                     <versionRange>[1.0,)</versionRange>
1296                     <goals>
1297                       <goal>manifest</goal>
1298                     </goals>
1299                   </pluginExecutionFilter>
1300                   <action>
1301                     <execute/>
1302                   </action>
1303                 </pluginExecution>
1304                 <pluginExecution>
1305                   <pluginExecutionFilter>
1306                     <groupId>org.apache.maven.plugins</groupId>
1307                     <artifactId>maven-enforcer-plugin</artifactId>
1308                     <versionRange>[1.0.0,)</versionRange>
1309                     <goals>
1310                       <goal>enforce</goal>
1311                     </goals>
1312                   </pluginExecutionFilter>
1313                   <action>
1314                     <ignore/>
1315                   </action>
1316                 </pluginExecution>
1317                 <pluginExecution>
1318                   <pluginExecutionFilter>
1319                     <groupId>org.apache.maven.plugins</groupId>
1320                     <artifactId>maven-checkstyle-plugin</artifactId>
1321                     <versionRange>[2.0.0,)</versionRange>
1322                     <goals>
1323                       <goal>check</goal>
1324                     </goals>
1325                   </pluginExecutionFilter>
1326                   <action>
1327                     <ignore/>
1328                   </action>
1329                 </pluginExecution>
1330                 <pluginExecution>
1331                   <pluginExecutionFilter>
1332                     <groupId>org.apache.maven.plugins</groupId>
1333                     <artifactId>maven-dependency-plugin</artifactId>
1334                     <versionRange>[2.10,)</versionRange>
1335                     <goals>
1336                       <goal>unpack</goal>
1337                     </goals>
1338                   </pluginExecutionFilter>
1339                   <action>
1340                     <execute/>
1341                   </action>
1342                 </pluginExecution>
1343                 <pluginExecution>
1344                   <pluginExecutionFilter>
1345                     <groupId>org.apache.servicemix.tooling</groupId>
1346                     <artifactId>depends-maven-plugin</artifactId>
1347                     <versionRange>[1.2,)</versionRange>
1348                     <goals>
1349                       <goal>generate-depends-file</goal>
1350                     </goals>
1351                   </pluginExecutionFilter>
1352                   <action>
1353                     <execute/>
1354                   </action>
1355                 </pluginExecution>
1356                 <pluginExecution>
1357                   <pluginExecutionFilter>
1358                     <groupId>org.jacoco</groupId>
1359                     <artifactId>jacoco-maven-plugin</artifactId>
1360                     <versionRange>[0.7.0,)</versionRange>
1361                     <goals>
1362                       <goal>prepare-agent</goal>
1363                       <goal>report</goal>
1364                     </goals>
1365                   </pluginExecutionFilter>
1366                   <action>
1367                     <ignore/>
1368                   </action>
1369                 </pluginExecution>
1370               </pluginExecutions>
1371             </lifecycleMappingMetadata>
1372           </configuration>
1373         </plugin>
1374
1375         <plugin>
1376           <groupId>org.jacoco</groupId>
1377           <artifactId>jacoco-maven-plugin</artifactId>
1378           <version>${jacoco.version}</version>
1379           <configuration>
1380             <!-- Note: This exclusion list should match <sonar.exclusions>
1381                        property above -->
1382             <excludes>
1383               <exclude>**/gen/**</exclude>
1384               <exclude>**/generated-sources/**</exclude>
1385               <exclude>**/yang-gen/**</exclude>
1386               <exclude>**/pax/**</exclude>
1387             </excludes>
1388           </configuration>
1389         </plugin>
1390
1391         <plugin>
1392           <groupId>org.ops4j.pax.exam</groupId>
1393           <artifactId>maven-paxexam-plugin</artifactId>
1394           <version>1.2.4</version>
1395         </plugin>
1396
1397         <plugin>
1398           <groupId>org.codehaus.mojo</groupId>
1399           <artifactId>jdepend-maven-plugin</artifactId>
1400           <version>2.0</version>
1401           <executions>
1402             <execution>
1403               <phase>site</phase>
1404               <goals>
1405                 <goal>generate-no-fork</goal>
1406               </goals>
1407             </execution>
1408           </executions>
1409         </plugin>
1410       </plugins>
1411     </pluginManagement>
1412
1413     <plugins>
1414       <plugin>
1415         <artifactId>maven-enforcer-plugin</artifactId>
1416         <executions>
1417           <execution>
1418             <id>enforce-maven</id>
1419             <configuration>
1420               <rules>
1421                 <requireMavenVersion>
1422                   <version>3.1.1</version>
1423                 </requireMavenVersion>
1424               </rules>
1425             </configuration>
1426             <goals>
1427               <goal>enforce</goal>
1428             </goals>
1429           </execution>
1430         </executions>
1431       </plugin>
1432       <plugin>
1433         <artifactId>maven-dependency-plugin</artifactId>
1434       </plugin>
1435       <plugin>
1436         <artifactId>maven-checkstyle-plugin</artifactId>
1437       </plugin>
1438       <plugin>
1439         <artifactId>maven-source-plugin</artifactId>
1440       </plugin>
1441       <plugin>
1442         <artifactId>maven-javadoc-plugin</artifactId>
1443       </plugin>
1444
1445       <!-- Jacoco / Sonar -->
1446       <plugin>
1447         <groupId>org.jacoco</groupId>
1448         <artifactId>jacoco-maven-plugin</artifactId>
1449         <executions>
1450           <execution>
1451             <id>pre-unit-test</id>
1452             <goals>
1453               <goal>prepare-agent</goal>
1454             </goals>
1455             <configuration>
1456               <destFile>${sonar.jacoco.reportPath}</destFile>
1457             </configuration>
1458           </execution>
1459           <execution>
1460             <id>post-unit-test</id>
1461             <goals>
1462               <goal>report</goal>
1463             </goals>
1464             <configuration>
1465               <dataFile>${sonar.jacoco.reportPath}</dataFile>
1466             </configuration>
1467           </execution>
1468         </executions>
1469       </plugin>
1470     </plugins>
1471   </build>
1472
1473   <reporting>
1474     <plugins>
1475       <plugin>
1476         <artifactId>maven-checkstyle-plugin</artifactId>
1477         <version>${checkstyle.version}</version>
1478       </plugin>
1479
1480       <!-- FIXME: activate this
1481       <plugin>
1482         <artifactId>maven-project-info-reports-plugin</artifactId>
1483         <version>${projectinfo}</version>
1484       </plugin-->
1485       <plugin>
1486         <groupId>org.codehaus.mojo</groupId>
1487         <artifactId>findbugs-maven-plugin</artifactId>
1488         <configuration>
1489           <effort>Max</effort>
1490           <threshold>Low</threshold>
1491           <goal>site</goal>
1492         </configuration>
1493       </plugin>
1494       <plugin>
1495         <groupId>org.codehaus.mojo</groupId>
1496         <artifactId>jdepend-maven-plugin</artifactId>
1497         <reportSets>
1498           <reportSet>
1499             <reports>
1500               <report>generate-no-fork</report>
1501             </reports>
1502           </reportSet>
1503         </reportSets>
1504       </plugin>
1505       <plugin>
1506         <artifactId>maven-javadoc-plugin</artifactId>
1507         <configuration>
1508           <links>
1509             <link>http://doc.akka.io/japi/akka/${akka.version}/</link>
1510             <link>https://google.github.io/guava/releases/${guava.version}/api/docs/</link>
1511             <link>http://netty.io/4.0/api/</link>
1512           </links>
1513         </configuration>
1514       </plugin>
1515     </plugins>
1516   </reporting>
1517
1518   <!--
1519     Maven Site Configuration
1520
1521     The following configuration is necessary for maven-site-plugin to
1522     correctly identify the correct deployment path for OpenDaylight Maven
1523     sites.
1524   -->
1525   <url>${odl.site.url}/${project.groupId}/${stream}/${project.artifactId}/</url>
1526
1527   <distributionManagement>
1528     <site>
1529       <id>opendaylight-site</id>
1530       <url>${nexus.site.url}/${project.artifactId}/</url>
1531     </site>
1532   </distributionManagement>
1533 </project>