blob: 9b275ab8201e3d256562a736e77ddc8b4f9bdb90 [file] [log] [blame]
alshabib522d9872014-08-15 10:35:16 -07001<?xml version="1.0" encoding="UTF-8"?>
tom09419512014-08-15 11:28:43 -07002<project xmlns="http://maven.apache.org/POM/4.0.0"
3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
5 <modelVersion>4.0.0</modelVersion>
alshabib522d9872014-08-15 10:35:16 -07006
tom0eb04ca2014-08-25 14:34:51 -07007 <groupId>org.onlab.onos</groupId>
tom09419512014-08-15 11:28:43 -07008 <artifactId>onos</artifactId>
9 <packaging>pom</packaging>
10 <version>1.0.0-SNAPSHOT</version>
alshabib522d9872014-08-15 10:35:16 -070011
tom0eb04ca2014-08-25 14:34:51 -070012 <description>Open Networking Operating System root project</description>
tom09419512014-08-15 11:28:43 -070013
14 <modules>
tom0eb04ca2014-08-25 14:34:51 -070015 <module>tools/build/conf</module>
16 <module>utils</module>
tome2dc27a2014-09-09 12:41:21 -070017 <module>core</module>
tom0eb04ca2014-08-25 14:34:51 -070018 <module>web</module>
19 <module>cli</module>
20 <module>providers</module>
tomf8b8d672014-09-17 13:07:23 -070021 <module>openflow</module>
tom8bb16062014-09-12 14:47:46 -070022 <module>apps</module>
tom09419512014-08-15 11:28:43 -070023 <module>features</module>
tomaa49a1e2014-09-12 23:11:46 -070024 <module>tools/package/branding</module>
tom09419512014-08-15 11:28:43 -070025 </modules>
26
27 <url>http://onlab.us/</url>
28
29 <licenses>
30 <license>
31 <!-- TODO: Is this really our license scheme? -->
32 <name>Apache License, Version 2.0</name>
33 <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
34 </license>
35 </licenses>
36
Yuta HIGUCHIe2efe722014-09-19 14:37:34 -070037 <properties>
38 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
39 </properties>
40
tom0eb04ca2014-08-25 14:34:51 -070041 <dependencyManagement>
42 <dependencies>
43 <dependency>
44 <groupId>junit</groupId>
45 <artifactId>junit</artifactId>
46 <version>4.11</version>
47 <scope>test</scope>
48 </dependency>
tom09419512014-08-15 11:28:43 -070049
tom0eb04ca2014-08-25 14:34:51 -070050 <dependency>
Brian O'Connorf3d06162014-10-02 15:54:12 -070051 <groupId>org.hamcrest</groupId>
52 <artifactId>hamcrest-core</artifactId>
53 <version>1.3</version>
54 <scope>test</scope>
55 </dependency>
56 <dependency>
57 <groupId>org.hamcrest</groupId>
58 <artifactId>hamcrest-library</artifactId>
59 <version>1.3</version>
60 <scope>test</scope>
61 </dependency>
62
63 <dependency>
tom0eb04ca2014-08-25 14:34:51 -070064 <groupId>org.slf4j</groupId>
65 <artifactId>slf4j-api</artifactId>
66 <version>1.7.6</version>
67 <scope>provided</scope>
68 </dependency>
69
70 <dependency>
71 <groupId>org.slf4j</groupId>
pankajb57fae22014-10-06 18:28:21 -070072 <artifactId>slf4j-core</artifactId>
73 <version>1.7.6</version>
74 <scope>test</scope>
75 </dependency>
76
77 <dependency>
78 <groupId>org.slf4j</groupId>
tom0eb04ca2014-08-25 14:34:51 -070079 <artifactId>slf4j-jdk14</artifactId>
80 <version>1.7.6</version>
81 <scope>test</scope>
82 </dependency>
83
84 <dependency>
85 <groupId>com.google.guava</groupId>
86 <artifactId>guava</artifactId>
tomeadbb462014-09-07 16:10:19 -070087 <version>18.0</version>
tom0eb04ca2014-08-25 14:34:51 -070088 </dependency>
89
alshabibdf652ad2014-09-09 11:53:19 -070090 <dependency>
91 <groupId>io.netty</groupId>
Madan Jampania185d862014-09-30 11:32:31 -070092 <artifactId>netty-all</artifactId>
93 <version>4.0.23.Final</version>
94 </dependency>
95
96 <dependency>
97 <groupId>io.netty</groupId>
alshabibdf652ad2014-09-09 11:53:19 -070098 <artifactId>netty</artifactId>
99 <version>3.9.0.Final</version>
100 </dependency>
101
tomde8d9682014-08-27 01:11:43 -0700102 <dependency>
103 <groupId>com.google.guava</groupId>
104 <artifactId>guava-testlib</artifactId>
tomeadbb462014-09-07 16:10:19 -0700105 <version>18.0</version>
tomde8d9682014-08-27 01:11:43 -0700106 <scope>test</scope>
107 </dependency>
108
tom6d2a43e2014-09-08 01:50:20 -0700109 <dependency>
110 <groupId>commons-lang</groupId>
111 <artifactId>commons-lang</artifactId>
112 <version>2.6</version>
113 </dependency>
tomde8d9682014-08-27 01:11:43 -0700114
tom66a7eb22014-09-22 11:58:56 -0700115 <dependency>
116 <groupId>org.apache.commons</groupId>
117 <artifactId>commons-lang3</artifactId>
118 <version>3.3.2</version>
119 </dependency>
120
Brian O'Connorf3d06162014-10-02 15:54:12 -0700121 <dependency>
122 <groupId>org.codehaus.jackson</groupId>
123 <artifactId>jackson-core-asl</artifactId>
124 <version>1.9.13</version>
125 </dependency>
126 <dependency>
127 <groupId>org.codehaus.jackson</groupId>
128 <artifactId>jackson-mapper-asl</artifactId>
129 <version>1.9.13</version>
130 </dependency>
Jonathan Hart74f9c3b2014-09-29 20:03:50 -0700131
Jonathan Hartb4758a92014-09-24 10:46:45 -0700132 <dependency>
133 <groupId>org.easymock</groupId>
134 <artifactId>easymock</artifactId>
135 <version>3.2</version>
136 <scope>test</scope>
137 </dependency>
tom66a7eb22014-09-22 11:58:56 -0700138
tom0eb04ca2014-08-25 14:34:51 -0700139 <!-- Web related -->
140 <dependency>
141 <groupId>com.sun.jersey</groupId>
142 <artifactId>jersey-servlet</artifactId>
143 <version>1.18.1</version>
144 <scope>provided</scope>
145 </dependency>
146 <dependency>
147 <groupId>com.fasterxml.jackson.core</groupId>
148 <artifactId>jackson-databind</artifactId>
149 <version>2.4.2</version>
150 <scope>provided</scope>
151 </dependency>
152 <dependency>
153 <groupId>com.fasterxml.jackson.core</groupId>
154 <artifactId>jackson-annotations</artifactId>
155 <version>2.4.2</version>
156 <scope>provided</scope>
157 </dependency>
158
159 <!-- OSGi related -->
160 <dependency>
161 <groupId>org.osgi</groupId>
162 <artifactId>org.osgi.core</artifactId>
163 <version>4.3.1</version>
164 <scope>provided</scope>
165 </dependency>
166 <dependency>
167 <groupId>org.apache.felix</groupId>
168 <artifactId>org.apache.felix.scr.annotations</artifactId>
169 <version>1.9.8</version>
170 <scope>provided</scope>
171 </dependency>
172 <dependency>
173 <groupId>org.apache.karaf.shell</groupId>
174 <artifactId>org.apache.karaf.shell.console</artifactId>
175 <version>3.0.1</version>
176 <scope>provided</scope>
177 </dependency>
178
Yuta HIGUCHI24a086b2014-09-21 23:28:41 -0700179 <dependency>
tom14dc4d02014-09-26 12:43:14 -0700180 <groupId>org.livetribe.slp</groupId>
181 <artifactId>livetribe-slp</artifactId>
182 <version>2.2.1</version>
183 </dependency>
184
185 <dependency>
Yuta HIGUCHI24a086b2014-09-21 23:28:41 -0700186 <groupId>com.hazelcast</groupId>
187 <artifactId>hazelcast</artifactId>
188 <version>3.3</version>
189 </dependency>
190 <dependency>
tomdc66b382014-09-22 17:05:47 -0700191 <groupId>com.eclipsesource.minimal-json</groupId>
192 <artifactId>minimal-json</artifactId>
193 <version>0.9.1</version>
194 </dependency>
195 <dependency>
Yuta HIGUCHI8ee7d4c2014-10-09 23:09:41 -0700196 <groupId>com.esotericsoftware</groupId>
197 <artifactId>kryo</artifactId>
198 <version>3.0.0</version>
199 </dependency>
200 <dependency>
201 <groupId>com.esotericsoftware</groupId>
202 <artifactId>reflectasm</artifactId>
203 <version>1.10.0</version>
204 <type>bundle</type>
205 </dependency>
206 <dependency>
207 <groupId>org.ow2.asm</groupId>
208 <artifactId>asm</artifactId>
209 <version>4.2</version>
Yuta HIGUCHI24a086b2014-09-21 23:28:41 -0700210 </dependency>
211 <dependency>
tom66a7eb22014-09-22 11:58:56 -0700212 <groupId>com.esotericsoftware</groupId>
213 <artifactId>minlog</artifactId>
214 <version>1.3.0</version>
215 </dependency>
216 <dependency>
217 <groupId>org.objenesis</groupId>
218 <artifactId>objenesis</artifactId>
219 <version>2.1</version>
220 </dependency>
Yuta HIGUCHI24a086b2014-09-21 23:28:41 -0700221
tom0eb04ca2014-08-25 14:34:51 -0700222 <!-- ONOS related -->
223 <dependency>
224 <groupId>org.onlab.onos</groupId>
tom5f38b3a2014-08-27 23:50:54 -0700225 <artifactId>onlab-misc</artifactId>
226 <version>${project.version}</version>
227 </dependency>
tom931af4e2014-09-13 12:00:57 -0700228 <dependency>
229 <groupId>org.onlab.onos</groupId>
tomf110fff2014-09-26 00:38:18 -0700230 <artifactId>onlab-nio</artifactId>
231 <version>${project.version}</version>
232 </dependency>
233 <dependency>
234 <groupId>org.onlab.onos</groupId>
tom0872a172014-09-23 11:24:26 -0700235 <artifactId>onlab-osgi</artifactId>
236 <version>${project.version}</version>
237 </dependency>
238 <dependency>
239 <groupId>org.onlab.onos</groupId>
tom931af4e2014-09-13 12:00:57 -0700240 <artifactId>onlab-junit</artifactId>
241 <version>1.0.0-SNAPSHOT</version>
242 <scope>test</scope>
243 </dependency>
tom5f38b3a2014-08-27 23:50:54 -0700244
245 <dependency>
246 <groupId>org.onlab.onos</groupId>
tom0eb04ca2014-08-25 14:34:51 -0700247 <artifactId>onos-api</artifactId>
248 <version>${project.version}</version>
249 </dependency>
250 <dependency>
251 <groupId>org.onlab.onos</groupId>
tom61359e92014-09-16 15:50:27 -0700252 <artifactId>onos-api</artifactId>
253 <version>${project.version}</version>
254 <classifier>tests</classifier>
255 <scope>test</scope>
256 </dependency>
257
258 <dependency>
259 <groupId>org.onlab.onos</groupId>
tom0eb04ca2014-08-25 14:34:51 -0700260 <artifactId>onos-of-api</artifactId>
261 <version>${project.version}</version>
262 </dependency>
tom61359e92014-09-16 15:50:27 -0700263 <dependency>
264 <groupId>org.onlab.onos</groupId>
265 <artifactId>onos-of-api</artifactId>
266 <version>${project.version}</version>
267 <classifier>tests</classifier>
268 <scope>test</scope>
269 </dependency>
Yuta HIGUCHI707a7e62014-10-02 16:35:49 -0700270 <dependency>
271 <groupId>commons-pool</groupId>
272 <artifactId>commons-pool</artifactId>
273 <version>1.6</version>
274 </dependency>
tom0eb04ca2014-08-25 14:34:51 -0700275 </dependencies>
276 </dependencyManagement>
277
278 <dependencies>
279 <dependency>
280 <groupId>junit</groupId>
281 <artifactId>junit</artifactId>
282 </dependency>
283 <dependency>
Brian O'Connorf3d06162014-10-02 15:54:12 -0700284 <groupId>org.hamcrest</groupId>
285 <artifactId>hamcrest-core</artifactId>
286 </dependency>
287 <dependency>
288 <groupId>org.hamcrest</groupId>
289 <artifactId>hamcrest-library</artifactId>
290 </dependency>
291 <dependency>
tom0eb04ca2014-08-25 14:34:51 -0700292 <groupId>org.slf4j</groupId>
Yuta HIGUCHI0390ffb2014-10-09 23:45:16 -0700293 <artifactId>slf4j-api</artifactId>
294 </dependency>
295 <dependency>
296 <groupId>org.slf4j</groupId>
tom0eb04ca2014-08-25 14:34:51 -0700297 <artifactId>slf4j-jdk14</artifactId>
298 </dependency>
299 </dependencies>
tom09419512014-08-15 11:28:43 -0700300
301 <build>
302 <pluginManagement>
303 <plugins>
304 <plugin>
305 <groupId>org.apache.maven.plugins</groupId>
306 <artifactId>maven-compiler-plugin</artifactId>
Yuta HIGUCHIea90aa62014-10-13 15:57:55 -0700307 <!-- TODO: update once following issue is fixed. -->
308 <!-- https://jira.codehaus.org/browse/MCOMPILER-205 -->
309 <version>2.5.1</version>
tom09419512014-08-15 11:28:43 -0700310 <configuration>
311 <source>1.7</source>
312 <target>1.7</target>
313 </configuration>
314 </plugin>
315
316 <plugin>
317 <groupId>org.apache.maven.plugins</groupId>
318 <artifactId>maven-surefire-plugin</artifactId>
319 <version>2.17</version>
tom64888122014-08-27 21:47:46 -0700320 <configuration>
321 <redirectTestOutputToFile>true</redirectTestOutputToFile>
322 <printSummary>true</printSummary>
323 </configuration>
tom09419512014-08-15 11:28:43 -0700324 </plugin>
325
326 <plugin>
327 <groupId>org.apache.maven.plugins</groupId>
328 <artifactId>maven-jar-plugin</artifactId>
329 <version>2.3.1</version>
330 <executions>
331 <execution>
332 <phase>package</phase>
333 <goals>
334 <goal>test-jar</goal>
335 </goals>
336 </execution>
337 </executions>
338 </plugin>
339
340 <plugin>
tom0eb04ca2014-08-25 14:34:51 -0700341 <groupId>org.apache.maven.plugins</groupId>
342 <artifactId>maven-resources-plugin</artifactId>
343 <version>2.6</version>
344 </plugin>
345
346 <plugin>
tom09419512014-08-15 11:28:43 -0700347 <groupId>org.apache.felix</groupId>
348 <artifactId>maven-bundle-plugin</artifactId>
349 <version>2.3.7</version>
350 <extensions>true</extensions>
351 </plugin>
352
353 <plugin>
354 <groupId>org.apache.felix</groupId>
355 <artifactId>maven-scr-plugin</artifactId>
356 <version>1.15.0</version>
357 <executions>
358 <execution>
359 <id>generate-scr-srcdescriptor</id>
360 <goals>
361 <goal>scr</goal>
362 </goals>
363 </execution>
364 </executions>
365 <configuration>
366 <supportedProjectTypes>
367 <supportedProjectType>bundle</supportedProjectType>
368 <supportedProjectType>war</supportedProjectType>
369 </supportedProjectTypes>
370 </configuration>
371 </plugin>
372
tom09419512014-08-15 11:28:43 -0700373 <!-- TODO: add findbugs plugin for static code analysis; for explicit invocation only -->
Brian O'Connorf3d06162014-10-02 15:54:12 -0700374 <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
375 <plugin>
376 <groupId>org.eclipse.m2e</groupId>
377 <artifactId>lifecycle-mapping</artifactId>
378 <version>1.0.0</version>
379 <configuration>
380 <lifecycleMappingMetadata>
381 <pluginExecutions>
382 <pluginExecution>
383 <pluginExecutionFilter>
384 <groupId>org.jacoco</groupId>
385 <artifactId>
386 jacoco-maven-plugin
387 </artifactId>
388 <versionRange>
389 [0.7.1.201405082137,)
390 </versionRange>
391 <goals>
392 <goal>prepare-agent</goal>
393 </goals>
394 </pluginExecutionFilter>
395 <action>
396 <ignore></ignore>
397 </action>
398 </pluginExecution>
399 </pluginExecutions>
400 </lifecycleMappingMetadata>
401 </configuration>
402 </plugin>
tom09419512014-08-15 11:28:43 -0700403 </plugins>
tom09419512014-08-15 11:28:43 -0700404 </pluginManagement>
tom0eb04ca2014-08-25 14:34:51 -0700405
406 <plugins>
407 <plugin>
408 <groupId>org.apache.maven.plugins</groupId>
tome33cc1a2014-08-25 21:59:41 -0700409 <artifactId>maven-jar-plugin</artifactId>
410 </plugin>
411
412 <plugin>
413 <groupId>org.apache.maven.plugins</groupId>
tom0eb04ca2014-08-25 14:34:51 -0700414 <artifactId>maven-checkstyle-plugin</artifactId>
415 <version>2.12.1</version>
416 <dependencies>
417 <dependency>
418 <groupId>org.onlab.tools</groupId>
419 <artifactId>onos-build-conf</artifactId>
420 <version>1.0</version>
421 </dependency>
422 </dependencies>
423 <configuration>
424 <configLocation>onos/checkstyle.xml</configLocation>
425 <suppressionsLocation>onos/suppressions.xml
426 </suppressionsLocation>
427 <failsOnError>false</failsOnError>
428 <logViolationsToConsole>true</logViolationsToConsole>
429 <includeTestSourceDirectory>true
430 </includeTestSourceDirectory>
431 </configuration>
432 <executions>
433 <execution>
434 <id>validate-checkstyle</id>
435 <phase>verify</phase>
436 <goals>
437 <goal>check</goal>
438 </goals>
439 </execution>
440 </executions>
441 </plugin>
442
443 <plugin>
tom50a76dd2014-09-02 15:18:35 -0700444 <groupId>org.apache.maven.plugins</groupId>
445 <artifactId>maven-pmd-plugin</artifactId>
446 <version>3.2</version>
447 <configuration>
448 <excludes>
tom50a76dd2014-09-02 15:18:35 -0700449 </excludes>
450 <rulesets>
451 <ruleset>onos/pmd.xml</ruleset>
452 </rulesets>
453 </configuration>
454 <executions>
455 <execution>
456 <id>validate-pmd</id>
457 <phase>verify</phase>
458 <goals>
459 <!-- Uncomment this goal to make the build fail on pmd errors -->
460 <!--<goal>check</goal>-->
461 </goals>
462 </execution>
463 </executions>
464 </plugin>
465
466 <plugin>
tom4f3b18b2014-08-28 14:38:47 -0700467 <groupId>org.jacoco</groupId>
468 <artifactId>jacoco-maven-plugin</artifactId>
469 <version>0.7.1.201405082137</version>
470 <executions>
471 <execution>
472 <id>default-prepare-agent</id>
473 <goals>
474 <goal>prepare-agent</goal>
475 </goals>
476 </execution>
477 <execution>
478 <id>default-report</id>
479 <phase>prepare-package</phase>
480 <goals>
481 <goal>report</goal>
482 </goals>
483 </execution>
484 </executions>
485 </plugin>
486
487 <plugin>
tom0eb04ca2014-08-25 14:34:51 -0700488 <groupId>org.apache.maven.plugins</groupId>
489 <artifactId>maven-javadoc-plugin</artifactId>
490 <version>2.9.1</version>
491 <configuration>
tom578ebdc2014-09-11 11:12:51 -0700492 <show>package</show>
tom0eb04ca2014-08-25 14:34:51 -0700493 <docfilessubdirs>true</docfilessubdirs>
494 <doctitle>ONOS Java API</doctitle>
495 <groups>
496 <group>
497 <title>Network Model &amp; Services</title>
498 <packages>
tom5d4e73c2014-09-24 18:38:24 -0700499 org.onlab.onos:org.onlab.onos.*
tom0eb04ca2014-08-25 14:34:51 -0700500 </packages>
501 </group>
502 <group>
503 <title>Core Subsystems</title>
504 <packages>
Yuta HIGUCHI80912e62014-10-12 00:15:47 -0700505 org.onlab.onos.impl:org.onlab.onos.cluster.impl:org.onlab.onos.net.device.impl:org.onlab.onos.net.link.impl:org.onlab.onos.net.host.impl:org.onlab.onos.net.topology.impl:org.onlab.onos.net.packet.impl:org.onlab.onos.net.flow.impl:org.onlab.onos.store.trivial.*:org.onlab.onos.net.*.impl:org.onlab.onos.event.impl:org.onlab.onos.store.*:org.onlab.onos.net.intent.impl:org.onlab.onos.net.proxyarp.impl:org.onlab.onos.mastership.impl
tom0eb04ca2014-08-25 14:34:51 -0700506 </packages>
507 </group>
508 <group>
509 <title>OpenFlow Providers &amp; Controller
510 </title>
511 <packages>
tom9c94c5b2014-09-17 13:14:42 -0700512 org.onlab.onos.provider.of.*:org.onlab.onos.openflow.*
tom0eb04ca2014-08-25 14:34:51 -0700513 </packages>
514 </group>
515 <group>
516 <title>Utilities</title>
517 <packages>
tom984d7822014-08-29 12:02:59 -0700518 org.onlab.*
tom0eb04ca2014-08-25 14:34:51 -0700519 </packages>
520 </group>
521 <group>
522 <title>GUI, REST &amp; Command-Line</title>
523 <packages>
524 org.onlab.onos.gui:org.onlab.onos.rest:org.onlab.onos.cli:org.onlab.onos.gui.*:org.onlab.onos.rest.*:org.onlab.onos.cli.*
525 </packages>
526 </group>
tom8bb16062014-09-12 14:47:46 -0700527 <group>
528 <title>Sample Applications</title>
529 <packages>
tom093340b2014-10-10 00:15:36 -0700530 org.onlab.onos.tvue:org.onlab.onos.fwd:org.onlab.onos.ifwd:org.onlab.onos.mobility:org.onlab.onos.proxyarp:org.onlab.onos.foo
tom8bb16062014-09-12 14:47:46 -0700531 </packages>
532 </group>
tom0eb04ca2014-08-25 14:34:51 -0700533 </groups>
534 </configuration>
535 </plugin>
536
537 </plugins>
tom09419512014-08-15 11:28:43 -0700538 </build>
alshabib522d9872014-08-15 10:35:16 -0700539
tom0eb04ca2014-08-25 14:34:51 -0700540 <reporting>
541 <plugins>
542 <plugin>
543 <groupId>org.apache.maven.plugins</groupId>
544 <artifactId>maven-checkstyle-plugin</artifactId>
545 <version>2.12.1</version>
546 <configuration>
547 <configLocation>onos/checkstyle.xml</configLocation>
548 </configuration>
549 </plugin>
tom50a76dd2014-09-02 15:18:35 -0700550
551 <plugin>
552 <groupId>org.apache.maven.plugins</groupId>
553 <artifactId>maven-pmd-plugin</artifactId>
554 <version>3.2</version>
555 <configuration>
556 <excludes>
tom50a76dd2014-09-02 15:18:35 -0700557 </excludes>
558 <rulesets>
559 <ruleset>onos/pmd.xml</ruleset>
560 </rulesets>
561 </configuration>
562 </plugin>
563
tom0eb04ca2014-08-25 14:34:51 -0700564 </plugins>
565
566 </reporting>
567
alshabib522d9872014-08-15 10:35:16 -0700568</project>