blob: 9d7edfe6e25ea610671d260184e6628fb9a0c89a [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>
72 <artifactId>slf4j-jdk14</artifactId>
73 <version>1.7.6</version>
74 <scope>test</scope>
75 </dependency>
76
77 <dependency>
78 <groupId>com.google.guava</groupId>
79 <artifactId>guava</artifactId>
tomeadbb462014-09-07 16:10:19 -070080 <version>18.0</version>
tom0eb04ca2014-08-25 14:34:51 -070081 </dependency>
82
alshabibdf652ad2014-09-09 11:53:19 -070083 <dependency>
84 <groupId>io.netty</groupId>
Madan Jampania185d862014-09-30 11:32:31 -070085 <artifactId>netty-all</artifactId>
86 <version>4.0.23.Final</version>
87 </dependency>
88
89 <dependency>
90 <groupId>io.netty</groupId>
alshabibdf652ad2014-09-09 11:53:19 -070091 <artifactId>netty</artifactId>
92 <version>3.9.0.Final</version>
93 </dependency>
94
tomde8d9682014-08-27 01:11:43 -070095 <dependency>
96 <groupId>com.google.guava</groupId>
97 <artifactId>guava-testlib</artifactId>
tomeadbb462014-09-07 16:10:19 -070098 <version>18.0</version>
tomde8d9682014-08-27 01:11:43 -070099 <scope>test</scope>
100 </dependency>
101
tom6d2a43e2014-09-08 01:50:20 -0700102 <dependency>
103 <groupId>commons-lang</groupId>
104 <artifactId>commons-lang</artifactId>
105 <version>2.6</version>
106 </dependency>
tomde8d9682014-08-27 01:11:43 -0700107
tom66a7eb22014-09-22 11:58:56 -0700108 <dependency>
109 <groupId>org.apache.commons</groupId>
110 <artifactId>commons-lang3</artifactId>
111 <version>3.3.2</version>
112 </dependency>
113
Brian O'Connorf3d06162014-10-02 15:54:12 -0700114 <dependency>
115 <groupId>org.codehaus.jackson</groupId>
116 <artifactId>jackson-core-asl</artifactId>
117 <version>1.9.13</version>
118 </dependency>
119 <dependency>
120 <groupId>org.codehaus.jackson</groupId>
121 <artifactId>jackson-mapper-asl</artifactId>
122 <version>1.9.13</version>
123 </dependency>
Jonathan Hart74f9c3b2014-09-29 20:03:50 -0700124
Jonathan Hartb4758a92014-09-24 10:46:45 -0700125 <dependency>
126 <groupId>org.easymock</groupId>
127 <artifactId>easymock</artifactId>
128 <version>3.2</version>
129 <scope>test</scope>
130 </dependency>
tom66a7eb22014-09-22 11:58:56 -0700131
tom0eb04ca2014-08-25 14:34:51 -0700132 <!-- Web related -->
133 <dependency>
134 <groupId>com.sun.jersey</groupId>
135 <artifactId>jersey-servlet</artifactId>
136 <version>1.18.1</version>
137 <scope>provided</scope>
138 </dependency>
139 <dependency>
140 <groupId>com.fasterxml.jackson.core</groupId>
141 <artifactId>jackson-databind</artifactId>
142 <version>2.4.2</version>
143 <scope>provided</scope>
144 </dependency>
145 <dependency>
146 <groupId>com.fasterxml.jackson.core</groupId>
147 <artifactId>jackson-annotations</artifactId>
148 <version>2.4.2</version>
149 <scope>provided</scope>
150 </dependency>
151
152 <!-- OSGi related -->
153 <dependency>
154 <groupId>org.osgi</groupId>
155 <artifactId>org.osgi.core</artifactId>
156 <version>4.3.1</version>
157 <scope>provided</scope>
158 </dependency>
159 <dependency>
160 <groupId>org.apache.felix</groupId>
161 <artifactId>org.apache.felix.scr.annotations</artifactId>
162 <version>1.9.8</version>
163 <scope>provided</scope>
164 </dependency>
165 <dependency>
166 <groupId>org.apache.karaf.shell</groupId>
167 <artifactId>org.apache.karaf.shell.console</artifactId>
168 <version>3.0.1</version>
169 <scope>provided</scope>
170 </dependency>
171
Yuta HIGUCHI24a086b2014-09-21 23:28:41 -0700172 <dependency>
tom14dc4d02014-09-26 12:43:14 -0700173 <groupId>org.livetribe.slp</groupId>
174 <artifactId>livetribe-slp</artifactId>
175 <version>2.2.1</version>
176 </dependency>
177
178 <dependency>
Yuta HIGUCHI24a086b2014-09-21 23:28:41 -0700179 <groupId>com.hazelcast</groupId>
180 <artifactId>hazelcast</artifactId>
181 <version>3.3</version>
182 </dependency>
183 <dependency>
tomdc66b382014-09-22 17:05:47 -0700184 <groupId>com.eclipsesource.minimal-json</groupId>
185 <artifactId>minimal-json</artifactId>
186 <version>0.9.1</version>
187 </dependency>
188 <dependency>
Yuta HIGUCHI24a086b2014-09-21 23:28:41 -0700189 <groupId>com.esotericsoftware.kryo</groupId>
190 <artifactId>kryo</artifactId>
191 <version>2.24.0</version>
192 </dependency>
193 <dependency>
tom66a7eb22014-09-22 11:58:56 -0700194 <groupId>com.esotericsoftware</groupId>
195 <artifactId>minlog</artifactId>
196 <version>1.3.0</version>
197 </dependency>
198 <dependency>
199 <groupId>org.objenesis</groupId>
200 <artifactId>objenesis</artifactId>
201 <version>2.1</version>
202 </dependency>
203 <dependency>
Yuta HIGUCHI24a086b2014-09-21 23:28:41 -0700204 <groupId>de.javakaffee</groupId>
205 <artifactId>kryo-serializers</artifactId>
206 <version>0.27</version>
207 </dependency>
208
tom0eb04ca2014-08-25 14:34:51 -0700209 <!-- ONOS related -->
210 <dependency>
211 <groupId>org.onlab.onos</groupId>
tom5f38b3a2014-08-27 23:50:54 -0700212 <artifactId>onlab-misc</artifactId>
213 <version>${project.version}</version>
214 </dependency>
tom931af4e2014-09-13 12:00:57 -0700215 <dependency>
216 <groupId>org.onlab.onos</groupId>
tomf110fff2014-09-26 00:38:18 -0700217 <artifactId>onlab-nio</artifactId>
218 <version>${project.version}</version>
219 </dependency>
220 <dependency>
221 <groupId>org.onlab.onos</groupId>
tom0872a172014-09-23 11:24:26 -0700222 <artifactId>onlab-osgi</artifactId>
223 <version>${project.version}</version>
224 </dependency>
225 <dependency>
226 <groupId>org.onlab.onos</groupId>
tom931af4e2014-09-13 12:00:57 -0700227 <artifactId>onlab-junit</artifactId>
228 <version>1.0.0-SNAPSHOT</version>
229 <scope>test</scope>
230 </dependency>
tom5f38b3a2014-08-27 23:50:54 -0700231
232 <dependency>
233 <groupId>org.onlab.onos</groupId>
tom0eb04ca2014-08-25 14:34:51 -0700234 <artifactId>onos-api</artifactId>
235 <version>${project.version}</version>
236 </dependency>
237 <dependency>
238 <groupId>org.onlab.onos</groupId>
tom61359e92014-09-16 15:50:27 -0700239 <artifactId>onos-api</artifactId>
240 <version>${project.version}</version>
241 <classifier>tests</classifier>
242 <scope>test</scope>
243 </dependency>
244
245 <dependency>
246 <groupId>org.onlab.onos</groupId>
tom0eb04ca2014-08-25 14:34:51 -0700247 <artifactId>onos-of-api</artifactId>
248 <version>${project.version}</version>
249 </dependency>
tom61359e92014-09-16 15:50:27 -0700250 <dependency>
251 <groupId>org.onlab.onos</groupId>
252 <artifactId>onos-of-api</artifactId>
253 <version>${project.version}</version>
254 <classifier>tests</classifier>
255 <scope>test</scope>
256 </dependency>
Yuta HIGUCHI707a7e62014-10-02 16:35:49 -0700257 <dependency>
258 <groupId>commons-pool</groupId>
259 <artifactId>commons-pool</artifactId>
260 <version>1.6</version>
261 </dependency>
tom0eb04ca2014-08-25 14:34:51 -0700262 </dependencies>
263 </dependencyManagement>
264
265 <dependencies>
266 <dependency>
267 <groupId>junit</groupId>
268 <artifactId>junit</artifactId>
269 </dependency>
270 <dependency>
Brian O'Connorf3d06162014-10-02 15:54:12 -0700271 <groupId>org.hamcrest</groupId>
272 <artifactId>hamcrest-core</artifactId>
273 </dependency>
274 <dependency>
275 <groupId>org.hamcrest</groupId>
276 <artifactId>hamcrest-library</artifactId>
277 </dependency>
278 <dependency>
tom0eb04ca2014-08-25 14:34:51 -0700279 <groupId>org.slf4j</groupId>
280 <artifactId>slf4j-jdk14</artifactId>
281 </dependency>
282 </dependencies>
tom09419512014-08-15 11:28:43 -0700283
284 <build>
285 <pluginManagement>
286 <plugins>
287 <plugin>
288 <groupId>org.apache.maven.plugins</groupId>
289 <artifactId>maven-compiler-plugin</artifactId>
290 <version>3.1</version>
291 <configuration>
292 <source>1.7</source>
293 <target>1.7</target>
294 </configuration>
295 </plugin>
296
297 <plugin>
298 <groupId>org.apache.maven.plugins</groupId>
299 <artifactId>maven-surefire-plugin</artifactId>
300 <version>2.17</version>
tom64888122014-08-27 21:47:46 -0700301 <configuration>
302 <redirectTestOutputToFile>true</redirectTestOutputToFile>
303 <printSummary>true</printSummary>
304 </configuration>
tom09419512014-08-15 11:28:43 -0700305 </plugin>
306
307 <plugin>
308 <groupId>org.apache.maven.plugins</groupId>
309 <artifactId>maven-jar-plugin</artifactId>
310 <version>2.3.1</version>
311 <executions>
312 <execution>
313 <phase>package</phase>
314 <goals>
315 <goal>test-jar</goal>
316 </goals>
317 </execution>
318 </executions>
319 </plugin>
320
321 <plugin>
tom0eb04ca2014-08-25 14:34:51 -0700322 <groupId>org.apache.maven.plugins</groupId>
323 <artifactId>maven-resources-plugin</artifactId>
324 <version>2.6</version>
325 </plugin>
326
327 <plugin>
tom09419512014-08-15 11:28:43 -0700328 <groupId>org.apache.felix</groupId>
329 <artifactId>maven-bundle-plugin</artifactId>
330 <version>2.3.7</version>
331 <extensions>true</extensions>
332 </plugin>
333
334 <plugin>
335 <groupId>org.apache.felix</groupId>
336 <artifactId>maven-scr-plugin</artifactId>
337 <version>1.15.0</version>
338 <executions>
339 <execution>
340 <id>generate-scr-srcdescriptor</id>
341 <goals>
342 <goal>scr</goal>
343 </goals>
344 </execution>
345 </executions>
346 <configuration>
347 <supportedProjectTypes>
348 <supportedProjectType>bundle</supportedProjectType>
349 <supportedProjectType>war</supportedProjectType>
350 </supportedProjectTypes>
351 </configuration>
352 </plugin>
353
tom09419512014-08-15 11:28:43 -0700354 <!-- TODO: add findbugs plugin for static code analysis; for explicit invocation only -->
Brian O'Connorf3d06162014-10-02 15:54:12 -0700355 <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
356 <plugin>
357 <groupId>org.eclipse.m2e</groupId>
358 <artifactId>lifecycle-mapping</artifactId>
359 <version>1.0.0</version>
360 <configuration>
361 <lifecycleMappingMetadata>
362 <pluginExecutions>
363 <pluginExecution>
364 <pluginExecutionFilter>
365 <groupId>org.jacoco</groupId>
366 <artifactId>
367 jacoco-maven-plugin
368 </artifactId>
369 <versionRange>
370 [0.7.1.201405082137,)
371 </versionRange>
372 <goals>
373 <goal>prepare-agent</goal>
374 </goals>
375 </pluginExecutionFilter>
376 <action>
377 <ignore></ignore>
378 </action>
379 </pluginExecution>
380 </pluginExecutions>
381 </lifecycleMappingMetadata>
382 </configuration>
383 </plugin>
tom09419512014-08-15 11:28:43 -0700384 </plugins>
tom09419512014-08-15 11:28:43 -0700385 </pluginManagement>
tom0eb04ca2014-08-25 14:34:51 -0700386
387 <plugins>
388 <plugin>
389 <groupId>org.apache.maven.plugins</groupId>
tome33cc1a2014-08-25 21:59:41 -0700390 <artifactId>maven-jar-plugin</artifactId>
391 </plugin>
392
393 <plugin>
394 <groupId>org.apache.maven.plugins</groupId>
tom0eb04ca2014-08-25 14:34:51 -0700395 <artifactId>maven-checkstyle-plugin</artifactId>
396 <version>2.12.1</version>
397 <dependencies>
398 <dependency>
399 <groupId>org.onlab.tools</groupId>
400 <artifactId>onos-build-conf</artifactId>
401 <version>1.0</version>
402 </dependency>
403 </dependencies>
404 <configuration>
405 <configLocation>onos/checkstyle.xml</configLocation>
406 <suppressionsLocation>onos/suppressions.xml
407 </suppressionsLocation>
408 <failsOnError>false</failsOnError>
409 <logViolationsToConsole>true</logViolationsToConsole>
410 <includeTestSourceDirectory>true
411 </includeTestSourceDirectory>
412 </configuration>
413 <executions>
414 <execution>
415 <id>validate-checkstyle</id>
416 <phase>verify</phase>
417 <goals>
418 <goal>check</goal>
419 </goals>
420 </execution>
421 </executions>
422 </plugin>
423
424 <plugin>
tom50a76dd2014-09-02 15:18:35 -0700425 <groupId>org.apache.maven.plugins</groupId>
426 <artifactId>maven-pmd-plugin</artifactId>
427 <version>3.2</version>
428 <configuration>
429 <excludes>
430 <exclude>**/datastore/serializers/**</exclude>
431 <exclude>**/edu/stanford/**</exclude>
432 <exclude>**/net/floodlightcontroller/**</exclude>
433 </excludes>
434 <rulesets>
435 <ruleset>onos/pmd.xml</ruleset>
436 </rulesets>
437 </configuration>
438 <executions>
439 <execution>
440 <id>validate-pmd</id>
441 <phase>verify</phase>
442 <goals>
443 <!-- Uncomment this goal to make the build fail on pmd errors -->
444 <!--<goal>check</goal>-->
445 </goals>
446 </execution>
447 </executions>
448 </plugin>
449
450 <plugin>
tom4f3b18b2014-08-28 14:38:47 -0700451 <groupId>org.jacoco</groupId>
452 <artifactId>jacoco-maven-plugin</artifactId>
453 <version>0.7.1.201405082137</version>
454 <executions>
455 <execution>
456 <id>default-prepare-agent</id>
457 <goals>
458 <goal>prepare-agent</goal>
459 </goals>
460 </execution>
461 <execution>
462 <id>default-report</id>
463 <phase>prepare-package</phase>
464 <goals>
465 <goal>report</goal>
466 </goals>
467 </execution>
468 </executions>
469 </plugin>
470
471 <plugin>
tom0eb04ca2014-08-25 14:34:51 -0700472 <groupId>org.apache.maven.plugins</groupId>
473 <artifactId>maven-javadoc-plugin</artifactId>
474 <version>2.9.1</version>
475 <configuration>
tom578ebdc2014-09-11 11:12:51 -0700476 <show>package</show>
tom0eb04ca2014-08-25 14:34:51 -0700477 <docfilessubdirs>true</docfilessubdirs>
478 <doctitle>ONOS Java API</doctitle>
479 <groups>
480 <group>
481 <title>Network Model &amp; Services</title>
482 <packages>
tom5d4e73c2014-09-24 18:38:24 -0700483 org.onlab.onos:org.onlab.onos.*
tom0eb04ca2014-08-25 14:34:51 -0700484 </packages>
485 </group>
486 <group>
487 <title>Core Subsystems</title>
488 <packages>
toma1d16b62014-10-02 23:45:11 -0700489 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
tom0eb04ca2014-08-25 14:34:51 -0700490 </packages>
491 </group>
492 <group>
493 <title>OpenFlow Providers &amp; Controller
494 </title>
495 <packages>
tom9c94c5b2014-09-17 13:14:42 -0700496 org.onlab.onos.provider.of.*:org.onlab.onos.openflow.*
tom0eb04ca2014-08-25 14:34:51 -0700497 </packages>
498 </group>
499 <group>
500 <title>Utilities</title>
501 <packages>
tom984d7822014-08-29 12:02:59 -0700502 org.onlab.*
tom0eb04ca2014-08-25 14:34:51 -0700503 </packages>
504 </group>
505 <group>
506 <title>GUI, REST &amp; Command-Line</title>
507 <packages>
508 org.onlab.onos.gui:org.onlab.onos.rest:org.onlab.onos.cli:org.onlab.onos.gui.*:org.onlab.onos.rest.*:org.onlab.onos.cli.*
509 </packages>
510 </group>
tom8bb16062014-09-12 14:47:46 -0700511 <group>
512 <title>Sample Applications</title>
513 <packages>
tom5d4e73c2014-09-24 18:38:24 -0700514 org.onlab.onos.tvue:org.onlab.onos.fwd:org.onlab.onos.foo
tom8bb16062014-09-12 14:47:46 -0700515 </packages>
516 </group>
tom0eb04ca2014-08-25 14:34:51 -0700517 </groups>
518 </configuration>
519 </plugin>
520
521 </plugins>
tom09419512014-08-15 11:28:43 -0700522 </build>
alshabib522d9872014-08-15 10:35:16 -0700523
tom0eb04ca2014-08-25 14:34:51 -0700524 <reporting>
525 <plugins>
526 <plugin>
527 <groupId>org.apache.maven.plugins</groupId>
528 <artifactId>maven-checkstyle-plugin</artifactId>
529 <version>2.12.1</version>
530 <configuration>
531 <configLocation>onos/checkstyle.xml</configLocation>
532 </configuration>
533 </plugin>
tom50a76dd2014-09-02 15:18:35 -0700534
535 <plugin>
536 <groupId>org.apache.maven.plugins</groupId>
537 <artifactId>maven-pmd-plugin</artifactId>
538 <version>3.2</version>
539 <configuration>
540 <excludes>
541 <exclude>**/datastore/serializers/**</exclude>
542 <exclude>**/edu/stanford/**</exclude>
543 <exclude>**/net/floodlightcontroller/**</exclude>
544 </excludes>
545 <rulesets>
546 <ruleset>onos/pmd.xml</ruleset>
547 </rulesets>
548 </configuration>
549 </plugin>
550
tom0eb04ca2014-08-25 14:34:51 -0700551 </plugins>
552
553 </reporting>
554
alshabib522d9872014-08-15 10:35:16 -0700555</project>