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