blob: 312446787487a7f0d4af523513b7dc67d37abfa7 [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>
51 <groupId>org.slf4j</groupId>
52 <artifactId>slf4j-api</artifactId>
53 <version>1.7.6</version>
54 <scope>provided</scope>
55 </dependency>
56
57 <dependency>
58 <groupId>org.slf4j</groupId>
59 <artifactId>slf4j-jdk14</artifactId>
60 <version>1.7.6</version>
61 <scope>test</scope>
62 </dependency>
63
64 <dependency>
65 <groupId>com.google.guava</groupId>
66 <artifactId>guava</artifactId>
tomeadbb462014-09-07 16:10:19 -070067 <version>18.0</version>
tom0eb04ca2014-08-25 14:34:51 -070068 </dependency>
69
alshabibdf652ad2014-09-09 11:53:19 -070070 <dependency>
71 <groupId>io.netty</groupId>
Madan Jampania185d862014-09-30 11:32:31 -070072 <artifactId>netty-all</artifactId>
73 <version>4.0.23.Final</version>
74 </dependency>
75
76 <dependency>
77 <groupId>io.netty</groupId>
alshabibdf652ad2014-09-09 11:53:19 -070078 <artifactId>netty</artifactId>
79 <version>3.9.0.Final</version>
80 </dependency>
81
tomde8d9682014-08-27 01:11:43 -070082 <dependency>
83 <groupId>com.google.guava</groupId>
84 <artifactId>guava-testlib</artifactId>
tomeadbb462014-09-07 16:10:19 -070085 <version>18.0</version>
tomde8d9682014-08-27 01:11:43 -070086 <scope>test</scope>
87 </dependency>
88
tom6d2a43e2014-09-08 01:50:20 -070089 <dependency>
90 <groupId>commons-lang</groupId>
91 <artifactId>commons-lang</artifactId>
92 <version>2.6</version>
93 </dependency>
tomde8d9682014-08-27 01:11:43 -070094
tom66a7eb22014-09-22 11:58:56 -070095 <dependency>
96 <groupId>org.apache.commons</groupId>
97 <artifactId>commons-lang3</artifactId>
98 <version>3.3.2</version>
99 </dependency>
100
Jonathan Hart74f9c3b2014-09-29 20:03:50 -0700101 <dependency>
102 <groupId>org.codehaus.jackson</groupId>
103 <artifactId>jackson-core-asl</artifactId>
104 <version>1.9.13</version>
105 </dependency>
106 <dependency>
107 <groupId>org.codehaus.jackson</groupId>
108 <artifactId>jackson-mapper-asl</artifactId>
109 <version>1.9.13</version>
110 </dependency>
111
tom66a7eb22014-09-22 11:58:56 -0700112
tom0eb04ca2014-08-25 14:34:51 -0700113 <!-- Web related -->
114 <dependency>
115 <groupId>com.sun.jersey</groupId>
116 <artifactId>jersey-servlet</artifactId>
117 <version>1.18.1</version>
118 <scope>provided</scope>
119 </dependency>
120 <dependency>
121 <groupId>com.fasterxml.jackson.core</groupId>
122 <artifactId>jackson-databind</artifactId>
123 <version>2.4.2</version>
124 <scope>provided</scope>
125 </dependency>
126 <dependency>
127 <groupId>com.fasterxml.jackson.core</groupId>
128 <artifactId>jackson-annotations</artifactId>
129 <version>2.4.2</version>
130 <scope>provided</scope>
131 </dependency>
132
133 <!-- OSGi related -->
134 <dependency>
135 <groupId>org.osgi</groupId>
136 <artifactId>org.osgi.core</artifactId>
137 <version>4.3.1</version>
138 <scope>provided</scope>
139 </dependency>
140 <dependency>
141 <groupId>org.apache.felix</groupId>
142 <artifactId>org.apache.felix.scr.annotations</artifactId>
143 <version>1.9.8</version>
144 <scope>provided</scope>
145 </dependency>
146 <dependency>
147 <groupId>org.apache.karaf.shell</groupId>
148 <artifactId>org.apache.karaf.shell.console</artifactId>
149 <version>3.0.1</version>
150 <scope>provided</scope>
151 </dependency>
152
Yuta HIGUCHI24a086b2014-09-21 23:28:41 -0700153 <dependency>
tom14dc4d02014-09-26 12:43:14 -0700154 <groupId>org.livetribe.slp</groupId>
155 <artifactId>livetribe-slp</artifactId>
156 <version>2.2.1</version>
157 </dependency>
158
159 <dependency>
Yuta HIGUCHI24a086b2014-09-21 23:28:41 -0700160 <groupId>com.hazelcast</groupId>
161 <artifactId>hazelcast</artifactId>
162 <version>3.3</version>
163 </dependency>
164 <dependency>
tomdc66b382014-09-22 17:05:47 -0700165 <groupId>com.eclipsesource.minimal-json</groupId>
166 <artifactId>minimal-json</artifactId>
167 <version>0.9.1</version>
168 </dependency>
169 <dependency>
Yuta HIGUCHI24a086b2014-09-21 23:28:41 -0700170 <groupId>com.esotericsoftware.kryo</groupId>
171 <artifactId>kryo</artifactId>
172 <version>2.24.0</version>
173 </dependency>
174 <dependency>
tom66a7eb22014-09-22 11:58:56 -0700175 <groupId>com.esotericsoftware</groupId>
176 <artifactId>minlog</artifactId>
177 <version>1.3.0</version>
178 </dependency>
179 <dependency>
180 <groupId>org.objenesis</groupId>
181 <artifactId>objenesis</artifactId>
182 <version>2.1</version>
183 </dependency>
184 <dependency>
Yuta HIGUCHI24a086b2014-09-21 23:28:41 -0700185 <groupId>de.javakaffee</groupId>
186 <artifactId>kryo-serializers</artifactId>
187 <version>0.27</version>
188 </dependency>
189
tom0eb04ca2014-08-25 14:34:51 -0700190 <!-- ONOS related -->
191 <dependency>
192 <groupId>org.onlab.onos</groupId>
tom5f38b3a2014-08-27 23:50:54 -0700193 <artifactId>onlab-misc</artifactId>
194 <version>${project.version}</version>
195 </dependency>
tom931af4e2014-09-13 12:00:57 -0700196 <dependency>
197 <groupId>org.onlab.onos</groupId>
tomf110fff2014-09-26 00:38:18 -0700198 <artifactId>onlab-nio</artifactId>
199 <version>${project.version}</version>
200 </dependency>
201 <dependency>
202 <groupId>org.onlab.onos</groupId>
tom0872a172014-09-23 11:24:26 -0700203 <artifactId>onlab-osgi</artifactId>
204 <version>${project.version}</version>
205 </dependency>
206 <dependency>
207 <groupId>org.onlab.onos</groupId>
tom931af4e2014-09-13 12:00:57 -0700208 <artifactId>onlab-junit</artifactId>
209 <version>1.0.0-SNAPSHOT</version>
210 <scope>test</scope>
211 </dependency>
tom5f38b3a2014-08-27 23:50:54 -0700212
213 <dependency>
214 <groupId>org.onlab.onos</groupId>
tom0eb04ca2014-08-25 14:34:51 -0700215 <artifactId>onos-api</artifactId>
216 <version>${project.version}</version>
217 </dependency>
218 <dependency>
219 <groupId>org.onlab.onos</groupId>
tom61359e92014-09-16 15:50:27 -0700220 <artifactId>onos-api</artifactId>
221 <version>${project.version}</version>
222 <classifier>tests</classifier>
223 <scope>test</scope>
224 </dependency>
225
226 <dependency>
227 <groupId>org.onlab.onos</groupId>
tom0eb04ca2014-08-25 14:34:51 -0700228 <artifactId>onos-of-api</artifactId>
229 <version>${project.version}</version>
230 </dependency>
tom61359e92014-09-16 15:50:27 -0700231 <dependency>
232 <groupId>org.onlab.onos</groupId>
233 <artifactId>onos-of-api</artifactId>
234 <version>${project.version}</version>
235 <classifier>tests</classifier>
236 <scope>test</scope>
237 </dependency>
tom0eb04ca2014-08-25 14:34:51 -0700238 </dependencies>
239 </dependencyManagement>
240
241 <dependencies>
242 <dependency>
243 <groupId>junit</groupId>
244 <artifactId>junit</artifactId>
245 </dependency>
246 <dependency>
247 <groupId>org.slf4j</groupId>
248 <artifactId>slf4j-jdk14</artifactId>
249 </dependency>
250 </dependencies>
tom09419512014-08-15 11:28:43 -0700251
252 <build>
253 <pluginManagement>
254 <plugins>
255 <plugin>
256 <groupId>org.apache.maven.plugins</groupId>
257 <artifactId>maven-compiler-plugin</artifactId>
258 <version>3.1</version>
259 <configuration>
260 <source>1.7</source>
261 <target>1.7</target>
262 </configuration>
263 </plugin>
264
265 <plugin>
266 <groupId>org.apache.maven.plugins</groupId>
267 <artifactId>maven-surefire-plugin</artifactId>
268 <version>2.17</version>
tom64888122014-08-27 21:47:46 -0700269 <configuration>
270 <redirectTestOutputToFile>true</redirectTestOutputToFile>
271 <printSummary>true</printSummary>
272 </configuration>
tom09419512014-08-15 11:28:43 -0700273 </plugin>
274
275 <plugin>
276 <groupId>org.apache.maven.plugins</groupId>
277 <artifactId>maven-jar-plugin</artifactId>
278 <version>2.3.1</version>
279 <executions>
280 <execution>
281 <phase>package</phase>
282 <goals>
283 <goal>test-jar</goal>
284 </goals>
285 </execution>
286 </executions>
287 </plugin>
288
289 <plugin>
tom0eb04ca2014-08-25 14:34:51 -0700290 <groupId>org.apache.maven.plugins</groupId>
291 <artifactId>maven-resources-plugin</artifactId>
292 <version>2.6</version>
293 </plugin>
294
295 <plugin>
tom09419512014-08-15 11:28:43 -0700296 <groupId>org.apache.felix</groupId>
297 <artifactId>maven-bundle-plugin</artifactId>
298 <version>2.3.7</version>
299 <extensions>true</extensions>
300 </plugin>
301
302 <plugin>
303 <groupId>org.apache.felix</groupId>
304 <artifactId>maven-scr-plugin</artifactId>
305 <version>1.15.0</version>
306 <executions>
307 <execution>
308 <id>generate-scr-srcdescriptor</id>
309 <goals>
310 <goal>scr</goal>
311 </goals>
312 </execution>
313 </executions>
314 <configuration>
315 <supportedProjectTypes>
316 <supportedProjectType>bundle</supportedProjectType>
317 <supportedProjectType>war</supportedProjectType>
318 </supportedProjectTypes>
319 </configuration>
320 </plugin>
321
tom09419512014-08-15 11:28:43 -0700322 <!-- TODO: add findbugs plugin for static code analysis; for explicit invocation only -->
tom09419512014-08-15 11:28:43 -0700323 </plugins>
tom09419512014-08-15 11:28:43 -0700324 </pluginManagement>
tom0eb04ca2014-08-25 14:34:51 -0700325
326 <plugins>
327 <plugin>
328 <groupId>org.apache.maven.plugins</groupId>
tome33cc1a2014-08-25 21:59:41 -0700329 <artifactId>maven-jar-plugin</artifactId>
330 </plugin>
331
332 <plugin>
333 <groupId>org.apache.maven.plugins</groupId>
tom0eb04ca2014-08-25 14:34:51 -0700334 <artifactId>maven-checkstyle-plugin</artifactId>
335 <version>2.12.1</version>
336 <dependencies>
337 <dependency>
338 <groupId>org.onlab.tools</groupId>
339 <artifactId>onos-build-conf</artifactId>
340 <version>1.0</version>
341 </dependency>
342 </dependencies>
343 <configuration>
344 <configLocation>onos/checkstyle.xml</configLocation>
345 <suppressionsLocation>onos/suppressions.xml
346 </suppressionsLocation>
347 <failsOnError>false</failsOnError>
348 <logViolationsToConsole>true</logViolationsToConsole>
349 <includeTestSourceDirectory>true
350 </includeTestSourceDirectory>
351 </configuration>
352 <executions>
353 <execution>
354 <id>validate-checkstyle</id>
355 <phase>verify</phase>
356 <goals>
357 <goal>check</goal>
358 </goals>
359 </execution>
360 </executions>
361 </plugin>
362
363 <plugin>
tom50a76dd2014-09-02 15:18:35 -0700364 <groupId>org.apache.maven.plugins</groupId>
365 <artifactId>maven-pmd-plugin</artifactId>
366 <version>3.2</version>
367 <configuration>
368 <excludes>
369 <exclude>**/datastore/serializers/**</exclude>
370 <exclude>**/edu/stanford/**</exclude>
371 <exclude>**/net/floodlightcontroller/**</exclude>
372 </excludes>
373 <rulesets>
374 <ruleset>onos/pmd.xml</ruleset>
375 </rulesets>
376 </configuration>
377 <executions>
378 <execution>
379 <id>validate-pmd</id>
380 <phase>verify</phase>
381 <goals>
382 <!-- Uncomment this goal to make the build fail on pmd errors -->
383 <!--<goal>check</goal>-->
384 </goals>
385 </execution>
386 </executions>
387 </plugin>
388
389 <plugin>
tom4f3b18b2014-08-28 14:38:47 -0700390 <groupId>org.jacoco</groupId>
391 <artifactId>jacoco-maven-plugin</artifactId>
392 <version>0.7.1.201405082137</version>
393 <executions>
394 <execution>
395 <id>default-prepare-agent</id>
396 <goals>
397 <goal>prepare-agent</goal>
398 </goals>
399 </execution>
400 <execution>
401 <id>default-report</id>
402 <phase>prepare-package</phase>
403 <goals>
404 <goal>report</goal>
405 </goals>
406 </execution>
407 </executions>
408 </plugin>
409
410 <plugin>
tom0eb04ca2014-08-25 14:34:51 -0700411 <groupId>org.apache.maven.plugins</groupId>
412 <artifactId>maven-javadoc-plugin</artifactId>
413 <version>2.9.1</version>
414 <configuration>
tom578ebdc2014-09-11 11:12:51 -0700415 <show>package</show>
tom0eb04ca2014-08-25 14:34:51 -0700416 <docfilessubdirs>true</docfilessubdirs>
417 <doctitle>ONOS Java API</doctitle>
418 <groups>
419 <group>
420 <title>Network Model &amp; Services</title>
421 <packages>
tom5d4e73c2014-09-24 18:38:24 -0700422 org.onlab.onos:org.onlab.onos.*
tom0eb04ca2014-08-25 14:34:51 -0700423 </packages>
424 </group>
425 <group>
426 <title>Core Subsystems</title>
427 <packages>
tomea961ff2014-10-01 12:45:15 -0700428 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.*
tom0eb04ca2014-08-25 14:34:51 -0700429 </packages>
430 </group>
431 <group>
432 <title>OpenFlow Providers &amp; Controller
433 </title>
434 <packages>
tom9c94c5b2014-09-17 13:14:42 -0700435 org.onlab.onos.provider.of.*:org.onlab.onos.openflow.*
tom0eb04ca2014-08-25 14:34:51 -0700436 </packages>
437 </group>
438 <group>
439 <title>Utilities</title>
440 <packages>
tom984d7822014-08-29 12:02:59 -0700441 org.onlab.*
tom0eb04ca2014-08-25 14:34:51 -0700442 </packages>
443 </group>
444 <group>
445 <title>GUI, REST &amp; Command-Line</title>
446 <packages>
447 org.onlab.onos.gui:org.onlab.onos.rest:org.onlab.onos.cli:org.onlab.onos.gui.*:org.onlab.onos.rest.*:org.onlab.onos.cli.*
448 </packages>
449 </group>
tom8bb16062014-09-12 14:47:46 -0700450 <group>
451 <title>Sample Applications</title>
452 <packages>
tom5d4e73c2014-09-24 18:38:24 -0700453 org.onlab.onos.tvue:org.onlab.onos.fwd:org.onlab.onos.foo
tom8bb16062014-09-12 14:47:46 -0700454 </packages>
455 </group>
tom0eb04ca2014-08-25 14:34:51 -0700456 </groups>
457 </configuration>
458 </plugin>
459
460 </plugins>
tom09419512014-08-15 11:28:43 -0700461 </build>
alshabib522d9872014-08-15 10:35:16 -0700462
tom0eb04ca2014-08-25 14:34:51 -0700463 <reporting>
464 <plugins>
465 <plugin>
466 <groupId>org.apache.maven.plugins</groupId>
467 <artifactId>maven-checkstyle-plugin</artifactId>
468 <version>2.12.1</version>
469 <configuration>
470 <configLocation>onos/checkstyle.xml</configLocation>
471 </configuration>
472 </plugin>
tom50a76dd2014-09-02 15:18:35 -0700473
474 <plugin>
475 <groupId>org.apache.maven.plugins</groupId>
476 <artifactId>maven-pmd-plugin</artifactId>
477 <version>3.2</version>
478 <configuration>
479 <excludes>
480 <exclude>**/datastore/serializers/**</exclude>
481 <exclude>**/edu/stanford/**</exclude>
482 <exclude>**/net/floodlightcontroller/**</exclude>
483 </excludes>
484 <rulesets>
485 <ruleset>onos/pmd.xml</ruleset>
486 </rulesets>
487 </configuration>
488 </plugin>
489
tom0eb04ca2014-08-25 14:34:51 -0700490 </plugins>
491
492 </reporting>
493
alshabib522d9872014-08-15 10:35:16 -0700494</project>