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