blob: 0d57c3f92dbc6338867f3c39d9bde5d94c804306 [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>
72 <artifactId>netty</artifactId>
73 <version>3.9.0.Final</version>
74 </dependency>
75
tomde8d9682014-08-27 01:11:43 -070076 <dependency>
77 <groupId>com.google.guava</groupId>
78 <artifactId>guava-testlib</artifactId>
tomeadbb462014-09-07 16:10:19 -070079 <version>18.0</version>
tomde8d9682014-08-27 01:11:43 -070080 <scope>test</scope>
81 </dependency>
82
tom6d2a43e2014-09-08 01:50:20 -070083 <dependency>
84 <groupId>commons-lang</groupId>
85 <artifactId>commons-lang</artifactId>
86 <version>2.6</version>
87 </dependency>
tomde8d9682014-08-27 01:11:43 -070088
tom66a7eb22014-09-22 11:58:56 -070089 <dependency>
90 <groupId>org.apache.commons</groupId>
91 <artifactId>commons-lang3</artifactId>
92 <version>3.3.2</version>
93 </dependency>
94
95
tom0eb04ca2014-08-25 14:34:51 -070096 <!-- Web related -->
97 <dependency>
98 <groupId>com.sun.jersey</groupId>
99 <artifactId>jersey-servlet</artifactId>
100 <version>1.18.1</version>
101 <scope>provided</scope>
102 </dependency>
103 <dependency>
104 <groupId>com.fasterxml.jackson.core</groupId>
105 <artifactId>jackson-databind</artifactId>
106 <version>2.4.2</version>
107 <scope>provided</scope>
108 </dependency>
109 <dependency>
110 <groupId>com.fasterxml.jackson.core</groupId>
111 <artifactId>jackson-annotations</artifactId>
112 <version>2.4.2</version>
113 <scope>provided</scope>
114 </dependency>
115
116 <!-- OSGi related -->
117 <dependency>
118 <groupId>org.osgi</groupId>
119 <artifactId>org.osgi.core</artifactId>
120 <version>4.3.1</version>
121 <scope>provided</scope>
122 </dependency>
123 <dependency>
124 <groupId>org.apache.felix</groupId>
125 <artifactId>org.apache.felix.scr.annotations</artifactId>
126 <version>1.9.8</version>
127 <scope>provided</scope>
128 </dependency>
129 <dependency>
130 <groupId>org.apache.karaf.shell</groupId>
131 <artifactId>org.apache.karaf.shell.console</artifactId>
132 <version>3.0.1</version>
133 <scope>provided</scope>
134 </dependency>
135
Yuta HIGUCHI24a086b2014-09-21 23:28:41 -0700136 <dependency>
137 <groupId>com.hazelcast</groupId>
138 <artifactId>hazelcast</artifactId>
139 <version>3.3</version>
140 </dependency>
141 <dependency>
142 <groupId>com.esotericsoftware.kryo</groupId>
143 <artifactId>kryo</artifactId>
144 <version>2.24.0</version>
145 </dependency>
146 <dependency>
tom66a7eb22014-09-22 11:58:56 -0700147 <groupId>com.esotericsoftware</groupId>
148 <artifactId>minlog</artifactId>
149 <version>1.3.0</version>
150 </dependency>
151 <dependency>
152 <groupId>org.objenesis</groupId>
153 <artifactId>objenesis</artifactId>
154 <version>2.1</version>
155 </dependency>
156 <dependency>
Yuta HIGUCHI24a086b2014-09-21 23:28:41 -0700157 <groupId>de.javakaffee</groupId>
158 <artifactId>kryo-serializers</artifactId>
159 <version>0.27</version>
160 </dependency>
161
tom0eb04ca2014-08-25 14:34:51 -0700162 <!-- ONOS related -->
163 <dependency>
164 <groupId>org.onlab.onos</groupId>
tom5f38b3a2014-08-27 23:50:54 -0700165 <artifactId>onlab-misc</artifactId>
166 <version>${project.version}</version>
167 </dependency>
tom931af4e2014-09-13 12:00:57 -0700168 <dependency>
169 <groupId>org.onlab.onos</groupId>
170 <artifactId>onlab-junit</artifactId>
171 <version>1.0.0-SNAPSHOT</version>
172 <scope>test</scope>
173 </dependency>
tom5f38b3a2014-08-27 23:50:54 -0700174
175 <dependency>
176 <groupId>org.onlab.onos</groupId>
tom0eb04ca2014-08-25 14:34:51 -0700177 <artifactId>onos-api</artifactId>
178 <version>${project.version}</version>
179 </dependency>
180 <dependency>
181 <groupId>org.onlab.onos</groupId>
tom61359e92014-09-16 15:50:27 -0700182 <artifactId>onos-api</artifactId>
183 <version>${project.version}</version>
184 <classifier>tests</classifier>
185 <scope>test</scope>
186 </dependency>
187
188 <dependency>
189 <groupId>org.onlab.onos</groupId>
tom0eb04ca2014-08-25 14:34:51 -0700190 <artifactId>onos-of-api</artifactId>
191 <version>${project.version}</version>
192 </dependency>
tom61359e92014-09-16 15:50:27 -0700193 <dependency>
194 <groupId>org.onlab.onos</groupId>
195 <artifactId>onos-of-api</artifactId>
196 <version>${project.version}</version>
197 <classifier>tests</classifier>
198 <scope>test</scope>
199 </dependency>
tom0eb04ca2014-08-25 14:34:51 -0700200 </dependencies>
201 </dependencyManagement>
202
203 <dependencies>
204 <dependency>
205 <groupId>junit</groupId>
206 <artifactId>junit</artifactId>
207 </dependency>
208 <dependency>
209 <groupId>org.slf4j</groupId>
210 <artifactId>slf4j-jdk14</artifactId>
211 </dependency>
212 </dependencies>
tom09419512014-08-15 11:28:43 -0700213
214 <build>
215 <pluginManagement>
216 <plugins>
217 <plugin>
218 <groupId>org.apache.maven.plugins</groupId>
219 <artifactId>maven-compiler-plugin</artifactId>
220 <version>3.1</version>
221 <configuration>
222 <source>1.7</source>
223 <target>1.7</target>
224 </configuration>
225 </plugin>
226
227 <plugin>
228 <groupId>org.apache.maven.plugins</groupId>
229 <artifactId>maven-surefire-plugin</artifactId>
230 <version>2.17</version>
tom64888122014-08-27 21:47:46 -0700231 <configuration>
232 <redirectTestOutputToFile>true</redirectTestOutputToFile>
233 <printSummary>true</printSummary>
234 </configuration>
tom09419512014-08-15 11:28:43 -0700235 </plugin>
236
237 <plugin>
238 <groupId>org.apache.maven.plugins</groupId>
239 <artifactId>maven-jar-plugin</artifactId>
240 <version>2.3.1</version>
241 <executions>
242 <execution>
243 <phase>package</phase>
244 <goals>
245 <goal>test-jar</goal>
246 </goals>
247 </execution>
248 </executions>
249 </plugin>
250
251 <plugin>
tom0eb04ca2014-08-25 14:34:51 -0700252 <groupId>org.apache.maven.plugins</groupId>
253 <artifactId>maven-resources-plugin</artifactId>
254 <version>2.6</version>
255 </plugin>
256
257 <plugin>
tom09419512014-08-15 11:28:43 -0700258 <groupId>org.apache.felix</groupId>
259 <artifactId>maven-bundle-plugin</artifactId>
260 <version>2.3.7</version>
261 <extensions>true</extensions>
262 </plugin>
263
264 <plugin>
265 <groupId>org.apache.felix</groupId>
266 <artifactId>maven-scr-plugin</artifactId>
267 <version>1.15.0</version>
268 <executions>
269 <execution>
270 <id>generate-scr-srcdescriptor</id>
271 <goals>
272 <goal>scr</goal>
273 </goals>
274 </execution>
275 </executions>
276 <configuration>
277 <supportedProjectTypes>
278 <supportedProjectType>bundle</supportedProjectType>
279 <supportedProjectType>war</supportedProjectType>
280 </supportedProjectTypes>
281 </configuration>
282 </plugin>
283
tom09419512014-08-15 11:28:43 -0700284 <!-- TODO: add findbugs plugin for static code analysis; for explicit invocation only -->
tom09419512014-08-15 11:28:43 -0700285 </plugins>
tom09419512014-08-15 11:28:43 -0700286 </pluginManagement>
tom0eb04ca2014-08-25 14:34:51 -0700287
288 <plugins>
289 <plugin>
290 <groupId>org.apache.maven.plugins</groupId>
tome33cc1a2014-08-25 21:59:41 -0700291 <artifactId>maven-jar-plugin</artifactId>
292 </plugin>
293
294 <plugin>
295 <groupId>org.apache.maven.plugins</groupId>
tom0eb04ca2014-08-25 14:34:51 -0700296 <artifactId>maven-checkstyle-plugin</artifactId>
297 <version>2.12.1</version>
298 <dependencies>
299 <dependency>
300 <groupId>org.onlab.tools</groupId>
301 <artifactId>onos-build-conf</artifactId>
302 <version>1.0</version>
303 </dependency>
304 </dependencies>
305 <configuration>
306 <configLocation>onos/checkstyle.xml</configLocation>
307 <suppressionsLocation>onos/suppressions.xml
308 </suppressionsLocation>
309 <failsOnError>false</failsOnError>
310 <logViolationsToConsole>true</logViolationsToConsole>
311 <includeTestSourceDirectory>true
312 </includeTestSourceDirectory>
313 </configuration>
314 <executions>
315 <execution>
316 <id>validate-checkstyle</id>
317 <phase>verify</phase>
318 <goals>
319 <goal>check</goal>
320 </goals>
321 </execution>
322 </executions>
323 </plugin>
324
325 <plugin>
tom50a76dd2014-09-02 15:18:35 -0700326 <groupId>org.apache.maven.plugins</groupId>
327 <artifactId>maven-pmd-plugin</artifactId>
328 <version>3.2</version>
329 <configuration>
330 <excludes>
331 <exclude>**/datastore/serializers/**</exclude>
332 <exclude>**/edu/stanford/**</exclude>
333 <exclude>**/net/floodlightcontroller/**</exclude>
334 </excludes>
335 <rulesets>
336 <ruleset>onos/pmd.xml</ruleset>
337 </rulesets>
338 </configuration>
339 <executions>
340 <execution>
341 <id>validate-pmd</id>
342 <phase>verify</phase>
343 <goals>
344 <!-- Uncomment this goal to make the build fail on pmd errors -->
345 <!--<goal>check</goal>-->
346 </goals>
347 </execution>
348 </executions>
349 </plugin>
350
351 <plugin>
tom4f3b18b2014-08-28 14:38:47 -0700352 <groupId>org.jacoco</groupId>
353 <artifactId>jacoco-maven-plugin</artifactId>
354 <version>0.7.1.201405082137</version>
355 <executions>
356 <execution>
357 <id>default-prepare-agent</id>
358 <goals>
359 <goal>prepare-agent</goal>
360 </goals>
361 </execution>
362 <execution>
363 <id>default-report</id>
364 <phase>prepare-package</phase>
365 <goals>
366 <goal>report</goal>
367 </goals>
368 </execution>
369 </executions>
370 </plugin>
371
372 <plugin>
tom0eb04ca2014-08-25 14:34:51 -0700373 <groupId>org.apache.maven.plugins</groupId>
374 <artifactId>maven-javadoc-plugin</artifactId>
375 <version>2.9.1</version>
376 <configuration>
tom578ebdc2014-09-11 11:12:51 -0700377 <show>package</show>
tom0eb04ca2014-08-25 14:34:51 -0700378 <docfilessubdirs>true</docfilessubdirs>
379 <doctitle>ONOS Java API</doctitle>
380 <groups>
381 <group>
382 <title>Network Model &amp; Services</title>
383 <packages>
tom202175a2014-09-19 19:00:11 -0700384 org.onlab.onos:org.onlab.onos.*:
tom0eb04ca2014-08-25 14:34:51 -0700385 </packages>
386 </group>
387 <group>
388 <title>Core Subsystems</title>
389 <packages>
tom202175a2014-09-19 19:00:11 -0700390 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.net.trivial.*:org.onlab.onos.net.*.impl:org.onlab.onos.impl:org.onlab.onos.event.impl:org.onlab.onos.store.*
tom0eb04ca2014-08-25 14:34:51 -0700391 </packages>
392 </group>
393 <group>
394 <title>OpenFlow Providers &amp; Controller
395 </title>
396 <packages>
tom9c94c5b2014-09-17 13:14:42 -0700397 org.onlab.onos.provider.of.*:org.onlab.onos.openflow.*
tom0eb04ca2014-08-25 14:34:51 -0700398 </packages>
399 </group>
400 <group>
401 <title>Utilities</title>
402 <packages>
tom984d7822014-08-29 12:02:59 -0700403 org.onlab.*
tom0eb04ca2014-08-25 14:34:51 -0700404 </packages>
405 </group>
406 <group>
407 <title>GUI, REST &amp; Command-Line</title>
408 <packages>
409 org.onlab.onos.gui:org.onlab.onos.rest:org.onlab.onos.cli:org.onlab.onos.gui.*:org.onlab.onos.rest.*:org.onlab.onos.cli.*
410 </packages>
411 </group>
tom8bb16062014-09-12 14:47:46 -0700412 <group>
413 <title>Sample Applications</title>
414 <packages>
tomc370ebd2014-09-16 01:25:21 -0700415 org.onlab.onos.tvue:org.onlab.onos.fwd
tom8bb16062014-09-12 14:47:46 -0700416 </packages>
417 </group>
tom0eb04ca2014-08-25 14:34:51 -0700418 </groups>
419 </configuration>
420 </plugin>
421
422 </plugins>
tom09419512014-08-15 11:28:43 -0700423 </build>
alshabib522d9872014-08-15 10:35:16 -0700424
tom0eb04ca2014-08-25 14:34:51 -0700425 <reporting>
426 <plugins>
427 <plugin>
428 <groupId>org.apache.maven.plugins</groupId>
429 <artifactId>maven-checkstyle-plugin</artifactId>
430 <version>2.12.1</version>
431 <configuration>
432 <configLocation>onos/checkstyle.xml</configLocation>
433 </configuration>
434 </plugin>
tom50a76dd2014-09-02 15:18:35 -0700435
436 <plugin>
437 <groupId>org.apache.maven.plugins</groupId>
438 <artifactId>maven-pmd-plugin</artifactId>
439 <version>3.2</version>
440 <configuration>
441 <excludes>
442 <exclude>**/datastore/serializers/**</exclude>
443 <exclude>**/edu/stanford/**</exclude>
444 <exclude>**/net/floodlightcontroller/**</exclude>
445 </excludes>
446 <rulesets>
447 <ruleset>onos/pmd.xml</ruleset>
448 </rulesets>
449 </configuration>
450 </plugin>
451
tom0eb04ca2014-08-25 14:34:51 -0700452 </plugins>
453
454 </reporting>
455
alshabib522d9872014-08-15 10:35:16 -0700456</project>