blob: 18dd5b13cf4317f0305cb438f2304311559c57ea [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
76
77
tomde8d9682014-08-27 01:11:43 -070078 <dependency>
79 <groupId>com.google.guava</groupId>
80 <artifactId>guava-testlib</artifactId>
tomeadbb462014-09-07 16:10:19 -070081 <version>18.0</version>
tomde8d9682014-08-27 01:11:43 -070082 <scope>test</scope>
83 </dependency>
84
tom6d2a43e2014-09-08 01:50:20 -070085 <dependency>
86 <groupId>commons-lang</groupId>
87 <artifactId>commons-lang</artifactId>
88 <version>2.6</version>
89 </dependency>
tomde8d9682014-08-27 01:11:43 -070090
tom0eb04ca2014-08-25 14:34:51 -070091 <!-- Web related -->
92 <dependency>
93 <groupId>com.sun.jersey</groupId>
94 <artifactId>jersey-servlet</artifactId>
95 <version>1.18.1</version>
96 <scope>provided</scope>
97 </dependency>
98 <dependency>
99 <groupId>com.fasterxml.jackson.core</groupId>
100 <artifactId>jackson-databind</artifactId>
101 <version>2.4.2</version>
102 <scope>provided</scope>
103 </dependency>
104 <dependency>
105 <groupId>com.fasterxml.jackson.core</groupId>
106 <artifactId>jackson-annotations</artifactId>
107 <version>2.4.2</version>
108 <scope>provided</scope>
109 </dependency>
110
111 <!-- OSGi related -->
112 <dependency>
113 <groupId>org.osgi</groupId>
114 <artifactId>org.osgi.core</artifactId>
115 <version>4.3.1</version>
116 <scope>provided</scope>
117 </dependency>
118 <dependency>
119 <groupId>org.apache.felix</groupId>
120 <artifactId>org.apache.felix.scr.annotations</artifactId>
121 <version>1.9.8</version>
122 <scope>provided</scope>
123 </dependency>
124 <dependency>
125 <groupId>org.apache.karaf.shell</groupId>
126 <artifactId>org.apache.karaf.shell.console</artifactId>
127 <version>3.0.1</version>
128 <scope>provided</scope>
129 </dependency>
130
Yuta HIGUCHI24a086b2014-09-21 23:28:41 -0700131 <dependency>
132 <groupId>com.hazelcast</groupId>
133 <artifactId>hazelcast</artifactId>
134 <version>3.3</version>
135 </dependency>
136 <dependency>
137 <groupId>com.esotericsoftware.kryo</groupId>
138 <artifactId>kryo</artifactId>
139 <version>2.24.0</version>
140 </dependency>
141 <dependency>
142 <groupId>de.javakaffee</groupId>
143 <artifactId>kryo-serializers</artifactId>
144 <version>0.27</version>
145 </dependency>
146
147 <dependency>
148 <groupId>org.apache.commons</groupId>
149 <artifactId>commons-lang3</artifactId>
150 <version>3.3.2</version>
151 </dependency>
152
tom0eb04ca2014-08-25 14:34:51 -0700153 <!-- ONOS related -->
154 <dependency>
155 <groupId>org.onlab.onos</groupId>
tom5f38b3a2014-08-27 23:50:54 -0700156 <artifactId>onlab-misc</artifactId>
157 <version>${project.version}</version>
158 </dependency>
tom931af4e2014-09-13 12:00:57 -0700159 <dependency>
160 <groupId>org.onlab.onos</groupId>
161 <artifactId>onlab-junit</artifactId>
162 <version>1.0.0-SNAPSHOT</version>
163 <scope>test</scope>
164 </dependency>
tom5f38b3a2014-08-27 23:50:54 -0700165
166 <dependency>
167 <groupId>org.onlab.onos</groupId>
tom0eb04ca2014-08-25 14:34:51 -0700168 <artifactId>onos-api</artifactId>
169 <version>${project.version}</version>
170 </dependency>
171 <dependency>
172 <groupId>org.onlab.onos</groupId>
tom61359e92014-09-16 15:50:27 -0700173 <artifactId>onos-api</artifactId>
174 <version>${project.version}</version>
175 <classifier>tests</classifier>
176 <scope>test</scope>
177 </dependency>
178
179 <dependency>
180 <groupId>org.onlab.onos</groupId>
tom0eb04ca2014-08-25 14:34:51 -0700181 <artifactId>onos-of-api</artifactId>
182 <version>${project.version}</version>
183 </dependency>
tom61359e92014-09-16 15:50:27 -0700184 <dependency>
185 <groupId>org.onlab.onos</groupId>
186 <artifactId>onos-of-api</artifactId>
187 <version>${project.version}</version>
188 <classifier>tests</classifier>
189 <scope>test</scope>
190 </dependency>
tom0eb04ca2014-08-25 14:34:51 -0700191 </dependencies>
192 </dependencyManagement>
193
194 <dependencies>
195 <dependency>
196 <groupId>junit</groupId>
197 <artifactId>junit</artifactId>
198 </dependency>
199 <dependency>
200 <groupId>org.slf4j</groupId>
201 <artifactId>slf4j-jdk14</artifactId>
202 </dependency>
203 </dependencies>
tom09419512014-08-15 11:28:43 -0700204
205 <build>
206 <pluginManagement>
207 <plugins>
208 <plugin>
209 <groupId>org.apache.maven.plugins</groupId>
210 <artifactId>maven-compiler-plugin</artifactId>
211 <version>3.1</version>
212 <configuration>
213 <source>1.7</source>
214 <target>1.7</target>
215 </configuration>
216 </plugin>
217
218 <plugin>
219 <groupId>org.apache.maven.plugins</groupId>
220 <artifactId>maven-surefire-plugin</artifactId>
221 <version>2.17</version>
tom64888122014-08-27 21:47:46 -0700222 <configuration>
223 <redirectTestOutputToFile>true</redirectTestOutputToFile>
224 <printSummary>true</printSummary>
225 </configuration>
tom09419512014-08-15 11:28:43 -0700226 </plugin>
227
228 <plugin>
229 <groupId>org.apache.maven.plugins</groupId>
230 <artifactId>maven-jar-plugin</artifactId>
231 <version>2.3.1</version>
232 <executions>
233 <execution>
234 <phase>package</phase>
235 <goals>
236 <goal>test-jar</goal>
237 </goals>
238 </execution>
239 </executions>
240 </plugin>
241
242 <plugin>
tom0eb04ca2014-08-25 14:34:51 -0700243 <groupId>org.apache.maven.plugins</groupId>
244 <artifactId>maven-resources-plugin</artifactId>
245 <version>2.6</version>
246 </plugin>
247
248 <plugin>
tom09419512014-08-15 11:28:43 -0700249 <groupId>org.apache.felix</groupId>
250 <artifactId>maven-bundle-plugin</artifactId>
251 <version>2.3.7</version>
252 <extensions>true</extensions>
253 </plugin>
254
255 <plugin>
256 <groupId>org.apache.felix</groupId>
257 <artifactId>maven-scr-plugin</artifactId>
258 <version>1.15.0</version>
259 <executions>
260 <execution>
261 <id>generate-scr-srcdescriptor</id>
262 <goals>
263 <goal>scr</goal>
264 </goals>
265 </execution>
266 </executions>
267 <configuration>
268 <supportedProjectTypes>
269 <supportedProjectType>bundle</supportedProjectType>
270 <supportedProjectType>war</supportedProjectType>
271 </supportedProjectTypes>
272 </configuration>
273 </plugin>
274
tom09419512014-08-15 11:28:43 -0700275 <!-- TODO: add findbugs plugin for static code analysis; for explicit invocation only -->
tom09419512014-08-15 11:28:43 -0700276 </plugins>
tom09419512014-08-15 11:28:43 -0700277 </pluginManagement>
tom0eb04ca2014-08-25 14:34:51 -0700278
279 <plugins>
280 <plugin>
281 <groupId>org.apache.maven.plugins</groupId>
tome33cc1a2014-08-25 21:59:41 -0700282 <artifactId>maven-jar-plugin</artifactId>
283 </plugin>
284
285 <plugin>
286 <groupId>org.apache.maven.plugins</groupId>
tom0eb04ca2014-08-25 14:34:51 -0700287 <artifactId>maven-checkstyle-plugin</artifactId>
288 <version>2.12.1</version>
289 <dependencies>
290 <dependency>
291 <groupId>org.onlab.tools</groupId>
292 <artifactId>onos-build-conf</artifactId>
293 <version>1.0</version>
294 </dependency>
295 </dependencies>
296 <configuration>
297 <configLocation>onos/checkstyle.xml</configLocation>
298 <suppressionsLocation>onos/suppressions.xml
299 </suppressionsLocation>
300 <failsOnError>false</failsOnError>
301 <logViolationsToConsole>true</logViolationsToConsole>
302 <includeTestSourceDirectory>true
303 </includeTestSourceDirectory>
304 </configuration>
305 <executions>
306 <execution>
307 <id>validate-checkstyle</id>
308 <phase>verify</phase>
309 <goals>
310 <goal>check</goal>
311 </goals>
312 </execution>
313 </executions>
314 </plugin>
315
316 <plugin>
tom50a76dd2014-09-02 15:18:35 -0700317 <groupId>org.apache.maven.plugins</groupId>
318 <artifactId>maven-pmd-plugin</artifactId>
319 <version>3.2</version>
320 <configuration>
321 <excludes>
322 <exclude>**/datastore/serializers/**</exclude>
323 <exclude>**/edu/stanford/**</exclude>
324 <exclude>**/net/floodlightcontroller/**</exclude>
325 </excludes>
326 <rulesets>
327 <ruleset>onos/pmd.xml</ruleset>
328 </rulesets>
329 </configuration>
330 <executions>
331 <execution>
332 <id>validate-pmd</id>
333 <phase>verify</phase>
334 <goals>
335 <!-- Uncomment this goal to make the build fail on pmd errors -->
336 <!--<goal>check</goal>-->
337 </goals>
338 </execution>
339 </executions>
340 </plugin>
341
342 <plugin>
tom4f3b18b2014-08-28 14:38:47 -0700343 <groupId>org.jacoco</groupId>
344 <artifactId>jacoco-maven-plugin</artifactId>
345 <version>0.7.1.201405082137</version>
346 <executions>
347 <execution>
348 <id>default-prepare-agent</id>
349 <goals>
350 <goal>prepare-agent</goal>
351 </goals>
352 </execution>
353 <execution>
354 <id>default-report</id>
355 <phase>prepare-package</phase>
356 <goals>
357 <goal>report</goal>
358 </goals>
359 </execution>
360 </executions>
361 </plugin>
362
363 <plugin>
tom0eb04ca2014-08-25 14:34:51 -0700364 <groupId>org.apache.maven.plugins</groupId>
365 <artifactId>maven-javadoc-plugin</artifactId>
366 <version>2.9.1</version>
367 <configuration>
tom578ebdc2014-09-11 11:12:51 -0700368 <show>package</show>
tom0eb04ca2014-08-25 14:34:51 -0700369 <docfilessubdirs>true</docfilessubdirs>
370 <doctitle>ONOS Java API</doctitle>
371 <groups>
372 <group>
373 <title>Network Model &amp; Services</title>
374 <packages>
tom202175a2014-09-19 19:00:11 -0700375 org.onlab.onos:org.onlab.onos.*:
tom0eb04ca2014-08-25 14:34:51 -0700376 </packages>
377 </group>
378 <group>
379 <title>Core Subsystems</title>
380 <packages>
tom202175a2014-09-19 19:00:11 -0700381 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 -0700382 </packages>
383 </group>
384 <group>
385 <title>OpenFlow Providers &amp; Controller
386 </title>
387 <packages>
tom9c94c5b2014-09-17 13:14:42 -0700388 org.onlab.onos.provider.of.*:org.onlab.onos.openflow.*
tom0eb04ca2014-08-25 14:34:51 -0700389 </packages>
390 </group>
391 <group>
392 <title>Utilities</title>
393 <packages>
tom984d7822014-08-29 12:02:59 -0700394 org.onlab.*
tom0eb04ca2014-08-25 14:34:51 -0700395 </packages>
396 </group>
397 <group>
398 <title>GUI, REST &amp; Command-Line</title>
399 <packages>
400 org.onlab.onos.gui:org.onlab.onos.rest:org.onlab.onos.cli:org.onlab.onos.gui.*:org.onlab.onos.rest.*:org.onlab.onos.cli.*
401 </packages>
402 </group>
tom8bb16062014-09-12 14:47:46 -0700403 <group>
404 <title>Sample Applications</title>
405 <packages>
tomc370ebd2014-09-16 01:25:21 -0700406 org.onlab.onos.tvue:org.onlab.onos.fwd
tom8bb16062014-09-12 14:47:46 -0700407 </packages>
408 </group>
tom0eb04ca2014-08-25 14:34:51 -0700409 </groups>
410 </configuration>
411 </plugin>
412
413 </plugins>
tom09419512014-08-15 11:28:43 -0700414 </build>
alshabib522d9872014-08-15 10:35:16 -0700415
tom0eb04ca2014-08-25 14:34:51 -0700416 <reporting>
417 <plugins>
418 <plugin>
419 <groupId>org.apache.maven.plugins</groupId>
420 <artifactId>maven-checkstyle-plugin</artifactId>
421 <version>2.12.1</version>
422 <configuration>
423 <configLocation>onos/checkstyle.xml</configLocation>
424 </configuration>
425 </plugin>
tom50a76dd2014-09-02 15:18:35 -0700426
427 <plugin>
428 <groupId>org.apache.maven.plugins</groupId>
429 <artifactId>maven-pmd-plugin</artifactId>
430 <version>3.2</version>
431 <configuration>
432 <excludes>
433 <exclude>**/datastore/serializers/**</exclude>
434 <exclude>**/edu/stanford/**</exclude>
435 <exclude>**/net/floodlightcontroller/**</exclude>
436 </excludes>
437 <rulesets>
438 <ruleset>onos/pmd.xml</ruleset>
439 </rulesets>
440 </configuration>
441 </plugin>
442
tom0eb04ca2014-08-25 14:34:51 -0700443 </plugins>
444
445 </reporting>
446
alshabib522d9872014-08-15 10:35:16 -0700447</project>