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