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