blob: c4568fb9d46b378a2cf73d460d47dc7f73a5db76 [file] [log] [blame]
HIGUCHI Yutae7aa9252013-06-06 14:54:21 -07001<?xml version="1.0"?>
2<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
3 <modelVersion>4.0.0</modelVersion>
4 <prerequisites>
5 <maven>3.0.4</maven>
6 </prerequisites>
7 <groupId>net.onrc.onos</groupId>
Pankaj Berdebbd38612013-06-22 05:59:12 -07008 <artifactId>onos</artifactId>
HIGUCHI Yutae7aa9252013-06-06 14:54:21 -07009 <version>0.1.0</version>
10 <packaging>jar</packaging>
Yuta HIGUCHIf232d0f2014-04-16 09:23:02 -070011 <name>ONOS</name>
HIGUCHI Yutae7aa9252013-06-06 14:54:21 -070012 <url>http://onlab.us/</url>
Yuta HIGUCHId209c0b2014-04-25 23:33:27 -070013 <licenses>
14 <license>
15 <name>Apache License, Version 2.0</name>
16 <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
17 </license>
18 </licenses>
HIGUCHI Yutae7aa9252013-06-06 14:54:21 -070019 <repositories>
20 <repository>
21 <id>central</id>
22 <name>Maven Central repository</name>
23 <url>http://repo1.maven.org/maven2</url>
24 </repository>
25 <repository>
26 <id>maven-restlet</id>
27 <name>Public online Restlet repository</name>
28 <url>http://maven.restlet.org</url>
29 </repository>
HIGUCHI Yutae7aa9252013-06-06 14:54:21 -070030 </repositories>
31 <properties>
32 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
yoshi2fd4c7e2013-11-22 15:47:55 -080033 <powermock.version>1.5.1</powermock.version>
Pankaj Berde37d6d4d2013-12-03 10:12:56 -080034 <restlet.version>2.1.4</restlet.version>
Yuta HIGUCHI889958b2014-03-12 12:05:47 -070035 <cobertura-maven-plugin.version>2.6</cobertura-maven-plugin.version>
Yuta HIGUCHI042e82a2014-04-25 22:37:03 -070036 <!-- Following 2 findbugs version needs to be updated in sync to match the
37 findbugs version used in findbugs-plugin -->
Yuta HIGUCHI0fe749a2014-05-27 09:35:16 -070038 <findbugs.version>2.0.3</findbugs.version>
39 <findbugs-plugin.version>2.5.4</findbugs-plugin.version>
Yuta HIGUCHI6cab6382014-03-17 13:47:38 -070040 <findbugs.effort>Max</findbugs.effort>
41 <findbugs.excludeFilterFile>conf/findbugs/exclude.xml</findbugs.excludeFilterFile>
Yuta HIGUCHI01c5ed92014-03-18 11:08:22 -070042 <checkstyle-plugin.version>2.12</checkstyle-plugin.version>
Yuta HIGUCHI824552a2014-03-07 13:01:06 -080043 <!-- To publish javadoc to github,
44 uncomment com.github.github site-maven-plugin and
45 see https://github.com/OPENNETWORKINGLAB/ONOS/pull/425
46 <github.global.server>github</github.global.server>
47 -->
Yuta HIGUCHI6a643132014-03-18 22:39:27 -070048 <hazelcast.version>3.0.2</hazelcast.version>
HIGUCHI Yutae7aa9252013-06-06 14:54:21 -070049 </properties>
50 <build>
51 <plugins>
52 <plugin>
Ray Milkeyb5716c52014-04-07 11:38:27 -070053 <!-- Note: the checkstyle configuration is also in the reporting section -->
54 <groupId>org.apache.maven.plugins</groupId>
55 <artifactId>maven-checkstyle-plugin</artifactId>
56 <version>${checkstyle-plugin.version}</version>
57 <configuration>
58 <configLocation>conf/checkstyle/sun_checks.xml</configLocation>
Yuta HIGUCHIcbbaed32014-05-14 20:27:43 -070059 <propertiesLocation>${basedir}/conf/checkstyle/checkstyle_maven.properties</propertiesLocation>
Ray Milkeyb5716c52014-04-07 11:38:27 -070060 <failsOnError>false</failsOnError>
61 <logViolationsToConsole>true</logViolationsToConsole>
62 </configuration>
63 <executions>
64 <execution>
65 <id>validate-checkstyle</id>
Yuta HIGUCHI82566512014-04-16 09:44:17 -070066 <phase>verify</phase>
Ray Milkeyb5716c52014-04-07 11:38:27 -070067 <goals>
68 <goal>check</goal>
69 </goals>
70 </execution>
71 </executions>
Pavlin Radoslavov4f090a82013-12-13 18:45:45 -080072 </plugin>
73 <plugin>
HIGUCHI Yutae7aa9252013-06-06 14:54:21 -070074 <groupId>org.apache.maven.plugins</groupId>
75 <artifactId>maven-install-plugin</artifactId>
Yuta HIGUCHI01c5ed92014-03-18 11:08:22 -070076 <version>2.5.1</version>
HIGUCHI Yutae7aa9252013-06-06 14:54:21 -070077 <executions>
78 </executions>
79 </plugin>
80 <!-- guice maven plugin for dependency injection inside maven -->
81 <plugin>
82 <groupId>org.apache.camel</groupId>
83 <artifactId>guice-maven-plugin</artifactId>
84 <version>2.11.0</version>
85 </plugin>
86 <!-- compile -->
87 <plugin>
88 <groupId>org.apache.maven.plugins</groupId>
89 <artifactId>maven-compiler-plugin</artifactId>
Yuta HIGUCHI01c5ed92014-03-18 11:08:22 -070090 <version>3.1</version>
HIGUCHI Yutae7aa9252013-06-06 14:54:21 -070091 <configuration>
Yuta HIGUCHI641d9992013-12-18 16:40:45 -080092 <source>1.7</source>
93 <target>1.7</target>
HIGUCHI Yutae7aa9252013-06-06 14:54:21 -070094 <encoding>UTF-8</encoding>
Yuta HIGUCHIe636d472014-04-25 09:43:44 -070095 <showDeprecation>true</showDeprecation>
96 <showWarnings>true</showWarnings>
Yuta HIGUCHI593ee4c2014-05-12 21:31:39 -070097 <compilerArgs>
98 <arg>-Xlint:all</arg>
99 <arg>-Xlint:-serial</arg>
Ray Milkeyff735142014-05-22 19:06:02 -0700100 <arg>-Werror</arg>
Yuta HIGUCHI593ee4c2014-05-12 21:31:39 -0700101 </compilerArgs>
HIGUCHI Yutae7aa9252013-06-06 14:54:21 -0700102 </configuration>
HIGUCHI Yuta9f5c5a72013-06-11 13:21:43 -0700103 <executions>
104 </executions>
HIGUCHI Yutae7aa9252013-06-06 14:54:21 -0700105 </plugin>
106 <!-- test -->
107 <plugin>
108 <groupId>org.apache.maven.plugins</groupId>
109 <artifactId>maven-surefire-plugin</artifactId>
Yuta HIGUCHI01c5ed92014-03-18 11:08:22 -0700110 <version>2.16</version>
HIGUCHI Yutae7aa9252013-06-06 14:54:21 -0700111 <configuration>
HIGUCHI Yuta71c96dd2013-10-20 17:15:56 -0700112 <argLine>-XX:MaxPermSize=256m</argLine>
Yuta HIGUCHI824552a2014-03-07 13:01:06 -0800113 <redirectTestOutputToFile>true</redirectTestOutputToFile>
HIGUCHI Yutae7aa9252013-06-06 14:54:21 -0700114 </configuration>
115 </plugin>
116 <!-- exec:java -->
117 <plugin>
118 <groupId>org.codehaus.mojo</groupId>
119 <artifactId>exec-maven-plugin</artifactId>
120 <version>1.2.1</version>
121 <configuration>
Jonathan Hart51f6f5b2014-04-03 10:32:10 -0700122 <mainClass>net.onrc.onos.core.main.Main</mainClass>
HIGUCHI Yutae7aa9252013-06-06 14:54:21 -0700123 </configuration>
124 <executions>
125 </executions>
126 </plugin>
Yuta HIGUCHId209c0b2014-04-25 23:33:27 -0700127 <!--
128 <plugin>
HIGUCHI Yutae7aa9252013-06-06 14:54:21 -0700129 <groupId>org.codehaus.mojo</groupId>
130 <artifactId>build-helper-maven-plugin</artifactId>
131 <version>1.7</version>
132 <executions>
133 <execution>
134 <id>add-source</id>
135 <phase>generate-sources</phase>
136 <goals>
137 <goal>add-source</goal>
138 </goals>
139 <configuration>
140 <sources>
141 <source>lib/gen-java</source>
142 </sources>
143 </configuration>
144 </execution>
145 </executions>
Yuta HIGUCHId209c0b2014-04-25 23:33:27 -0700146 </plugin>
147 -->
Naoki Shiota1c393ce2013-06-28 22:55:14 -0700148 <plugin>
149 <groupId>org.apache.maven.plugins</groupId>
150 <artifactId>maven-javadoc-plugin</artifactId>
Yuta HIGUCHI01c5ed92014-03-18 11:08:22 -0700151 <version>2.9.1</version>
Naoki Shiota1c393ce2013-06-28 22:55:14 -0700152 <configuration>
153 <charset>UTF-8</charset>
154 <locale>en</locale>
155 </configuration>
156 </plugin>
Yuta HIGUCHI889958b2014-03-12 12:05:47 -0700157<!-- Remove me when we're sure that system test no longer need JaCoCo
timlindberg8b13e702013-07-17 14:45:50 -0700158 <plugin>
159 <groupId>org.jacoco</groupId>
160 <artifactId>jacoco-maven-plugin</artifactId>
161 <version>0.6.3.201306030806</version>
timlindberg8b13e702013-07-17 14:45:50 -0700162 <executions>
163 <execution>
164 <id>jacoco-initialize</id>
165 <goals>
166 <goal>prepare-agent</goal>
167 </goals>
168 </execution>
169 <execution>
170 <id>jacoco-site</id>
171 <phase>package</phase>
172 <goals>
173 <goal>report</goal>
174 </goals>
175 </execution>
176 </executions>
177 </plugin>
Yuta HIGUCHI889958b2014-03-12 12:05:47 -0700178-->
Pavlin Radoslavova463e462013-12-13 15:18:50 -0800179 <!--
HIGUCHI Yuta842b6f72013-10-08 14:19:48 -0700180 <plugin>
181 <groupId>com.github.github</groupId>
182 <artifactId>site-maven-plugin</artifactId>
183 <version>0.8</version>
184 <configuration>
185 <message>Creating site for ${project.version}</message>
186 <dryRun>true</dryRun>
187 <repositoryName>ONOS</repositoryName>
188 <repositoryOwner>OPENNETWORKINGLAB</repositoryOwner>
Yuta HIGUCHI824552a2014-03-07 13:01:06 -0800189 <path>javadoc/${project.version}/</path>
HIGUCHI Yuta842b6f72013-10-08 14:19:48 -0700190 </configuration>
191 <executions>
192 <execution>
193 <goals>
194 <goal>site</goal>
195 </goals>
196 <phase>site</phase>
197 </execution>
198 </executions>
199 </plugin>
Pavlin Radoslavova463e462013-12-13 15:18:50 -0800200 -->
Jonathan Hart2c61a502013-10-18 18:12:26 -0700201 <plugin>
Ray Milkeyb5716c52014-04-07 11:38:27 -0700202 <artifactId>maven-assembly-plugin</artifactId>
203 <configuration>
204 <descriptorRefs>
205 <descriptorRef>jar-with-dependencies</descriptorRef>
206 </descriptorRefs>
207 </configuration>
Jonathan Hart2c61a502013-10-18 18:12:26 -0700208 </plugin>
Yuta HIGUCHIb561efa2013-12-20 01:35:04 -0800209 <plugin>
Yuta HIGUCHIfbd9a7e2014-03-23 00:18:50 -0700210 <!-- Using groovy script to set maven property ${hostname}.
211 This is a workaround to get hostname as a property inside pom file,
212 which current Maven does not provide. -->
213 <groupId>org.codehaus.gmaven</groupId>
214 <artifactId>groovy-maven-plugin</artifactId>
215 <version>2.0</version>
216 <executions>
217 <execution>
218 <phase>initialize</phase>
219 <goals>
220 <goal>execute</goal>
221 </goals>
222 <configuration>
223 <source>
224 project.properties["hostname"] = InetAddress.getLocalHost().getHostName()
225 </source>
226 </configuration>
227 </execution>
228 </executions>
229 </plugin>
230 <plugin>
Yuta HIGUCHIb561efa2013-12-20 01:35:04 -0800231 <groupId>org.apache.maven.plugins</groupId>
232 <artifactId>maven-dependency-plugin</artifactId>
233 <version>2.8</version>
234 <executions>
235 <execution>
236 <id>build-classpath</id>
237 <phase>generate-sources</phase>
238 <goals>
239 <goal>build-classpath</goal>
240 </goals>
241 <configuration>
Yuta HIGUCHIfbd9a7e2014-03-23 00:18:50 -0700242 <outputFile>${project.basedir}/.javacp.${hostname}</outputFile>
Yuta HIGUCHIb561efa2013-12-20 01:35:04 -0800243 </configuration>
244 </execution>
245 </executions>
246 </plugin>
Yuta HIGUCHI889958b2014-03-12 12:05:47 -0700247 <plugin>
248 <groupId>org.codehaus.mojo</groupId>
249 <artifactId>cobertura-maven-plugin</artifactId>
250 <version>${cobertura-maven-plugin.version}</version>
251 <configuration>
252 <instrumentation>
253 <ignores>
254 <ignore>org.slf4j.*</ignore>
Yuta HIGUCHI889958b2014-03-12 12:05:47 -0700255 </ignores>
256 <excludes>
257 <exclude>org/openflow/**/*.class</exclude>
258 <exclude>net/floodlightcontroller/**/web/**/*.class</exclude>
259 </excludes>
260 </instrumentation>
Yuta HIGUCHI2d624d32014-06-03 00:09:10 -0700261 <quiet>true</quiet>
Yuta HIGUCHI889958b2014-03-12 12:05:47 -0700262 </configuration>
263 <executions>
264 <execution>
265 <goals>
266 <goal>clean</goal>
267 </goals>
268 </execution>
269 </executions>
270 </plugin>
Yuta HIGUCHI6cab6382014-03-17 13:47:38 -0700271 <!-- Note: the findbugs configuration is also in the reporting section -->
272 <plugin>
273 <groupId>org.codehaus.mojo</groupId>
274 <artifactId>findbugs-maven-plugin</artifactId>
275 <version>${findbugs-plugin.version}</version>
276 <configuration>
277 <effort>${findbugs.effort}</effort>
278 <excludeFilterFile>${findbugs.excludeFilterFile}</excludeFilterFile>
279 </configuration>
Ray Milkeyb5716c52014-04-07 11:38:27 -0700280 <executions>
281 <execution>
282 <id>validate-findbugs</id>
Yuta HIGUCHI82566512014-04-16 09:44:17 -0700283 <phase>verify</phase>
Ray Milkeyb5716c52014-04-07 11:38:27 -0700284 <goals>
Yuta HIGUCHI82566512014-04-16 09:44:17 -0700285 <goal>check</goal>
Ray Milkeyb5716c52014-04-07 11:38:27 -0700286 </goals>
287 </execution>
288 </executions>
Ray Milkey70d91cc2014-03-18 15:22:27 -0700289 </plugin>
290 <plugin>
291 <groupId>org.apache.maven.plugins</groupId>
292 <artifactId>maven-pmd-plugin</artifactId>
293 <version>3.1</version>
Ray Milkeyb5716c52014-04-07 11:38:27 -0700294 <configuration>
Yuta HIGUCHIabdb3562014-03-27 13:37:36 -0700295 <!--
296 Note: Exclusion definition exists in multiple places.
297 - In file ${findbugs.excludeFilterFile} defined at top of pom.xml
Yuta HIGUCHI057f7bc2014-04-16 17:37:41 -0700298 - In file conf/checkstyle/onos_suppressions.xml
Yuta HIGUCHIabdb3562014-03-27 13:37:36 -0700299 - maven-pmd-plugin configuration in pom.xml
300 (under build and reporting)
301 -->
Ray Milkeyb5716c52014-04-07 11:38:27 -0700302 <excludes>
Yuta HIGUCHI1cd90292014-04-03 14:31:10 -0700303 <exclude>**/datastore/serializers/**</exclude>
Ray Milkeyb5716c52014-04-07 11:38:27 -0700304 <exclude>**/edu/stanford/**</exclude>
305 <exclude>**/net/floodlightcontroller/**</exclude>
306 <exclude>**/org/openflow/**</exclude>
307 </excludes>
308 <rulesets>
309 <ruleset>${basedir}/conf/pmd/onos_ruleset.xml</ruleset>
310 </rulesets>
311 </configuration>
312 <executions>
313 <execution>
314 <id>validate-pmd</id>
Yuta HIGUCHI82566512014-04-16 09:44:17 -0700315 <phase>verify</phase>
Ray Milkeyb5716c52014-04-07 11:38:27 -0700316 <goals>
317 <!-- Uncomment this goal to make the build fail on pmd errors -->
318 <!--<goal>check</goal>-->
319 </goals>
320 </execution>
321 </executions>
Yuta HIGUCHI6cab6382014-03-17 13:47:38 -0700322 </plugin>
HIGUCHI Yutae7aa9252013-06-06 14:54:21 -0700323 </plugins>
Yuta HIGUCHI824552a2014-03-07 13:01:06 -0800324 <pluginManagement>
325 <plugins>
326 <!--This plugin's configuration is used to store Eclipse m2e settings
327 only. It has no influence on the Maven build itself. -->
328 <plugin>
329 <groupId>org.eclipse.m2e</groupId>
330 <artifactId>lifecycle-mapping</artifactId>
331 <version>1.0.0</version>
332 <configuration>
333 <lifecycleMappingMetadata>
334 <pluginExecutions>
335 <pluginExecution>
336 <pluginExecutionFilter>
337 <groupId>
338 org.apache.maven.plugins
339 </groupId>
340 <artifactId>
341 maven-dependency-plugin
342 </artifactId>
343 <versionRange>[2.8,)</versionRange>
344 <goals>
345 <goal>build-classpath</goal>
346 </goals>
347 </pluginExecutionFilter>
348 <action>
349 <ignore></ignore>
350 </action>
351 </pluginExecution>
Yuta HIGUCHIfbd9a7e2014-03-23 00:18:50 -0700352 <pluginExecution>
353 <pluginExecutionFilter>
354 <groupId>org.codehaus.gmaven</groupId>
355 <artifactId>groovy-maven-plugin</artifactId>
356 <versionRange>[2.0,)</versionRange>
357 <goals>
358 <goal>execute</goal>
359 </goals>
360 </pluginExecutionFilter>
361 <action>
362 <ignore></ignore>
363 </action>
364 </pluginExecution>
Yuta HIGUCHI824552a2014-03-07 13:01:06 -0800365 </pluginExecutions>
366 </lifecycleMappingMetadata>
367 </configuration>
368 </plugin>
369 </plugins>
370 </pluginManagement>
HIGUCHI Yutae7aa9252013-06-06 14:54:21 -0700371 </build>
Yuta HIGUCHId209c0b2014-04-25 23:33:27 -0700372 <!-- for getting visualization reporting -->
HIGUCHI Yutae7aa9252013-06-06 14:54:21 -0700373 <reporting>
Naoki Shiota1c393ce2013-06-28 22:55:14 -0700374 <excludeDefaults>true</excludeDefaults>
375 <outputDirectory>${project.build.directory}/site</outputDirectory>
HIGUCHI Yutae7aa9252013-06-06 14:54:21 -0700376 <plugins>
HIGUCHI Yuta842b6f72013-10-08 14:19:48 -0700377 <!--
HIGUCHI Yutae7aa9252013-06-06 14:54:21 -0700378 <plugin>
379 <groupId>org.apache.camel</groupId>
380 <artifactId>guice-maven-plugin</artifactId>
381 <version>2.11.0</version>
382 </plugin>
HIGUCHI Yuta842b6f72013-10-08 14:19:48 -0700383 -->
Naoki Shiota1c393ce2013-06-28 22:55:14 -0700384 <plugin>
385 <groupId>org.apache.maven.plugins</groupId>
386 <artifactId>maven-project-info-reports-plugin</artifactId>
Yuta HIGUCHI01c5ed92014-03-18 11:08:22 -0700387 <version>2.7</version>
Naoki Shiota1c393ce2013-06-28 22:55:14 -0700388 <configuration>
389 <dependencyDetailsEnabled>false</dependencyDetailsEnabled>
390 <dependencyLocationsEnabled>false</dependencyLocationsEnabled>
391 </configuration>
392 <reportSets>
393 <reportSet>
394 <reports>
395 <report>dependencies</report>
HIGUCHI Yuta842b6f72013-10-08 14:19:48 -0700396 <!--report>maven-emma-plugin</report-->
Naoki Shiota1c393ce2013-06-28 22:55:14 -0700397 <report>scm</report>
398 </reports>
399 </reportSet>
400 </reportSets>
401 </plugin>
402 <plugin>
403 <groupId>org.apache.maven.plugins</groupId>
404 <artifactId>maven-javadoc-plugin</artifactId>
Yuta HIGUCHI01c5ed92014-03-18 11:08:22 -0700405 <version>2.9.1</version>
Naoki Shiota1c393ce2013-06-28 22:55:14 -0700406 <configuration>
407 <charset>UTF-8</charset>
408 <locale>en</locale>
409 </configuration>
410 </plugin>
Pavlin Radoslavov4f090a82013-12-13 18:45:45 -0800411 <plugin>
Ray Milkeyb5716c52014-04-07 11:38:27 -0700412 <!-- Note: the checkstyle configuration is also in the build section -->
413 <groupId>org.apache.maven.plugins</groupId>
414 <artifactId>maven-checkstyle-plugin</artifactId>
415 <version>${checkstyle-plugin.version}</version>
416 <configuration>
417 <configLocation>conf/checkstyle/sun_checks.xml</configLocation>
Yuta HIGUCHI6cab6382014-03-17 13:47:38 -0700418 <!--
419 Note: Exclusion definition exists in multiple places.
420 - In file ${findbugs.excludeFilterFile} defined at top of pom.xml
421 - maven-checkstyle-plugin configuration in pom.xml
422 - maven-pmd-plugin configuration in pom.xml
Yuta HIGUCHIabdb3562014-03-27 13:37:36 -0700423 (under build and reporting)
Yuta HIGUCHI6cab6382014-03-17 13:47:38 -0700424 -->
Yuta HIGUCHIcbbaed32014-05-14 20:27:43 -0700425 <propertiesLocation>${basedir}/conf/checkstyle/checkstyle_maven.properties</propertiesLocation>
Ray Milkeyb5716c52014-04-07 11:38:27 -0700426 </configuration>
427 <reportSets>
428 <reportSet>
429 <reports>
430 <report>checkstyle</report>
431 </reports>
432 </reportSet>
433 </reportSets>
Pavlin Radoslavov4f090a82013-12-13 18:45:45 -0800434 </plugin>
Yuta HIGUCHI6cab6382014-03-17 13:47:38 -0700435 <!-- Note: the findbugs configuration is also in the build section -->
Pavlin Radoslavov4f090a82013-12-13 18:45:45 -0800436 <plugin>
Ray Milkey8d3a2f02014-03-10 18:13:35 -0700437 <groupId>org.codehaus.mojo</groupId>
438 <artifactId>findbugs-maven-plugin</artifactId>
Yuta HIGUCHI6cab6382014-03-17 13:47:38 -0700439 <version>${findbugs-plugin.version}</version>
Ray Milkey8d3a2f02014-03-10 18:13:35 -0700440 <configuration>
Yuta HIGUCHI6cab6382014-03-17 13:47:38 -0700441 <effort>${findbugs.effort}</effort>
442 <excludeFilterFile>${findbugs.excludeFilterFile}</excludeFilterFile>
Ray Milkey8d3a2f02014-03-10 18:13:35 -0700443 <reportPlugins>
444 <plugin>
445 <groupId>org.codehaus.mojo</groupId>
446 <artifactId>findbugs-maven-plugin</artifactId>
447 </plugin>
448 </reportPlugins>
449 </configuration>
450 </plugin>
451 <plugin>
452 <groupId>org.apache.maven.plugins</groupId>
453 <artifactId>maven-pmd-plugin</artifactId>
Yuta HIGUCHI01c5ed92014-03-18 11:08:22 -0700454 <version>3.1</version>
Yuta HIGUCHI6cab6382014-03-17 13:47:38 -0700455 <configuration>
456 <!--
457 Note: Exclusion definition exists in multiple places.
458 - In file ${findbugs.excludeFilterFile} defined at top of pom.xml
Yuta HIGUCHI057f7bc2014-04-16 17:37:41 -0700459 - In file conf/checkstyle/onos_suppressions.xml
Yuta HIGUCHI6cab6382014-03-17 13:47:38 -0700460 - maven-pmd-plugin configuration in pom.xml
Yuta HIGUCHIabdb3562014-03-27 13:37:36 -0700461 (under build and reporting)
Yuta HIGUCHI6cab6382014-03-17 13:47:38 -0700462 -->
463 <excludes>
Yuta HIGUCHI1cd90292014-04-03 14:31:10 -0700464 <exclude>**/datastore/serializers/**</exclude>
Ray Milkeyb5716c52014-04-07 11:38:27 -0700465 <exclude>**/edu/stanford/**</exclude>
466 <exclude>**/net/floodlightcontroller/**</exclude>
467 <exclude>**/org/openflow/**</exclude>
Yuta HIGUCHI6cab6382014-03-17 13:47:38 -0700468 </excludes>
Ray Milkeyb5716c52014-04-07 11:38:27 -0700469 <rulesets>
470 <ruleset>${basedir}/conf/pmd/onos_ruleset.xml</ruleset>
471 </rulesets>
Yuta HIGUCHI6cab6382014-03-17 13:47:38 -0700472 </configuration>
Ray Milkey8d3a2f02014-03-10 18:13:35 -0700473 </plugin>
474 <plugin>
Ray Milkeyb5716c52014-04-07 11:38:27 -0700475 <groupId>org.apache.maven.plugins</groupId>
476 <artifactId>maven-jxr-plugin</artifactId>
477 <version>2.4</version>
Pavlin Radoslavov4f090a82013-12-13 18:45:45 -0800478 </plugin>
Yuta HIGUCHI889958b2014-03-12 12:05:47 -0700479 <plugin>
480 <groupId>org.codehaus.mojo</groupId>
481 <artifactId>cobertura-maven-plugin</artifactId>
482 <version>${cobertura-maven-plugin.version}</version>
483 </plugin>
HIGUCHI Yutae7aa9252013-06-06 14:54:21 -0700484 </plugins>
485 </reporting>
486 <dependencies>
Yuta HIGUCHI824552a2014-03-07 13:01:06 -0800487 <!-- ONOS's direct dependencies -->
Yuta HIGUCHI5548a492013-10-24 00:39:23 -0700488 <dependency>
489 <groupId>com.esotericsoftware.kryo</groupId>
490 <artifactId>kryo</artifactId>
Yuta HIGUCHI6a518df2014-05-07 20:40:23 -0700491 <version>2.24.0</version>
Yuta HIGUCHI5548a492013-10-24 00:39:23 -0700492 </dependency>
HIGUCHI Yutae7aa9252013-06-06 14:54:21 -0700493 <dependency>
Yuta HIGUCHI824552a2014-03-07 13:01:06 -0800494 <groupId>com.google.protobuf</groupId>
495 <artifactId>protobuf-java</artifactId>
496 <version>2.5.0</version>
yoshi28bac132014-01-22 11:00:17 -0800497 </dependency>
498 <dependency>
yoshi2fd4c7e2013-11-22 15:47:55 -0800499 <groupId>com.hazelcast</groupId>
500 <artifactId>hazelcast</artifactId>
Yuta HIGUCHI6a643132014-03-18 22:39:27 -0700501 <version>${hazelcast.version}</version>
502 </dependency>
503 <dependency>
Yuta HIGUCHId209c0b2014-04-25 23:33:27 -0700504 <!-- Required for backend datastore as Hazelcast -->
Yuta HIGUCHI6a643132014-03-18 22:39:27 -0700505 <groupId>com.hazelcast</groupId>
506 <artifactId>hazelcast-client</artifactId>
507 <version>${hazelcast.version}</version>
yoshi2fd4c7e2013-11-22 15:47:55 -0800508 </dependency>
HIGUCHI Yutae7aa9252013-06-06 14:54:21 -0700509 <dependency>
HIGUCHI Yuta9f5c5a72013-06-11 13:21:43 -0700510 <groupId>net.sf.json-lib</groupId>
511 <artifactId>json-lib</artifactId>
512 <version>2.4</version>
513 <classifier>jdk15</classifier>
HIGUCHI Yutae7aa9252013-06-06 14:54:21 -0700514 </dependency>
515 <dependency>
HIGUCHI Yuta9f5c5a72013-06-11 13:21:43 -0700516 <groupId>org.restlet.jse</groupId>
517 <artifactId>org.restlet</artifactId>
518 <version>${restlet.version}</version>
HIGUCHI Yutae7aa9252013-06-06 14:54:21 -0700519 </dependency>
520 <dependency>
HIGUCHI Yuta9f5c5a72013-06-11 13:21:43 -0700521 <groupId>org.restlet.jse</groupId>
522 <artifactId>org.restlet.ext.slf4j</artifactId>
523 <version>${restlet.version}</version>
HIGUCHI Yutae7aa9252013-06-06 14:54:21 -0700524 </dependency>
525 <dependency>
Yuta HIGUCHId209c0b2014-04-25 23:33:27 -0700526 <groupId>org.restlet.jse</groupId>
Ray Milkey3aeda4f2014-05-21 14:38:58 -0700527 <artifactId>org.restlet.ext.json</artifactId>
528 <version>${restlet.version}</version>
529 </dependency>
530 <dependency>
531 <groupId>org.restlet.jse</groupId>
Yuta HIGUCHId209c0b2014-04-25 23:33:27 -0700532 <artifactId>org.restlet.ext.jackson</artifactId>
533 <version>${restlet.version}</version>
534 </dependency>
535 <dependency>
HIGUCHI Yutae7aa9252013-06-06 14:54:21 -0700536 <groupId>org.codehaus.jackson</groupId>
537 <artifactId>jackson-core-asl</artifactId>
Pankaj Berde85c58f92013-10-03 18:26:08 -0700538 <version>1.9.13</version>
HIGUCHI Yutae7aa9252013-06-06 14:54:21 -0700539 </dependency>
540 <dependency>
541 <groupId>org.codehaus.jackson</groupId>
542 <artifactId>jackson-mapper-asl</artifactId>
Pankaj Berde85c58f92013-10-03 18:26:08 -0700543 <version>1.9.13</version>
HIGUCHI Yutae7aa9252013-06-06 14:54:21 -0700544 </dependency>
545 <dependency>
Yuta HIGUCHId209c0b2014-04-25 23:33:27 -0700546 <groupId>org.restlet.jse</groupId>
547 <artifactId>org.restlet.ext.simple</artifactId>
548 <version>${restlet.version}</version>
549 </dependency>
550 <dependency>
551 <groupId>org.simpleframework</groupId>
552 <artifactId>simple</artifactId>
553 <version>4.1.21</version>
554 </dependency>
555 <dependency>
HIGUCHI Yuta9f5c5a72013-06-11 13:21:43 -0700556 <groupId>ch.qos.logback</groupId>
HIGUCHI Yuta9f5c5a72013-06-11 13:21:43 -0700557 <artifactId>logback-classic</artifactId>
Pankaj Berde98478422013-09-10 13:53:26 -0700558 <version>1.0.13</version>
HIGUCHI Yuta9f5c5a72013-06-11 13:21:43 -0700559 <scope>runtime</scope>
560 </dependency>
Yuta HIGUCHI824552a2014-03-07 13:01:06 -0800561 <dependency>
Yuta HIGUCHId209c0b2014-04-25 23:33:27 -0700562 <groupId>org.slf4j</groupId>
563 <artifactId>slf4j-api</artifactId>
564 <version>1.7.5</version>
565 </dependency>
566 <dependency>
567 <groupId>com.google.guava</groupId>
568 <artifactId>guava</artifactId>
569 <version>16.0.1</version>
570 </dependency>
571 <dependency>
Yuta HIGUCHI824552a2014-03-07 13:01:06 -0800572 <groupId>commons-configuration</groupId>
573 <artifactId>commons-configuration</artifactId>
574 <version>1.6</version>
575 </dependency>
576 <dependency>
Yuta HIGUCHI850b0042014-04-16 15:10:31 -0700577 <groupId>commons-lang</groupId>
578 <artifactId>commons-lang</artifactId>
579 <version>2.6</version>
580 </dependency>
581 <dependency>
Yuta HIGUCHI824552a2014-03-07 13:01:06 -0800582 <groupId>commons-httpclient</groupId>
583 <artifactId>commons-httpclient</artifactId>
584 <version>3.1</version>
585 </dependency>
586 <dependency>
Yuta HIGUCHId395b932014-05-01 15:15:20 -0700587 <groupId>commons-collections</groupId>
588 <artifactId>commons-collections</artifactId>
589 <version>3.2.1</version>
590 </dependency>
591 <dependency>
Yuta HIGUCHI824552a2014-03-07 13:01:06 -0800592 <groupId>org.apache.zookeeper</groupId>
593 <artifactId>zookeeper</artifactId>
594 <version>3.4.5</version>
Yuta HIGUCHI6d935e52014-03-28 10:34:26 -0700595 <scope>runtime</scope>
596 <!-- Following workaround exclusions can be removed,
597 when we're ready to switch to ZooKeeper 3.4.6 -->
598 <exclusions>
599 <exclusion>
600 <groupId>com.sun.jmx</groupId>
601 <artifactId>jmxri</artifactId>
602 </exclusion>
603 <exclusion>
604 <groupId>com.sun.jdmk</groupId>
605 <artifactId>jmxtools</artifactId>
606 </exclusion>
607 <exclusion>
608 <groupId>javax.jms</groupId>
609 <artifactId>jms</artifactId>
610 </exclusion>
611 </exclusions>
Yuta HIGUCHI824552a2014-03-07 13:01:06 -0800612 </dependency>
Yuta HIGUCHI824552a2014-03-07 13:01:06 -0800613 <dependency>
Jonathan Hart116b1fe2014-03-14 18:53:47 -0700614 <groupId>org.apache.curator</groupId>
615 <artifactId>curator-framework</artifactId>
616 <version>2.4.1</version>
617 </dependency>
618 <dependency>
619 <groupId>org.apache.curator</groupId>
620 <artifactId>curator-client</artifactId>
621 <version>2.4.1</version>
622 </dependency>
623 <dependency>
624 <groupId>org.apache.curator</groupId>
625 <artifactId>curator-recipes</artifactId>
626 <version>2.4.1</version>
627 </dependency>
628 <dependency>
629 <groupId>org.apache.curator</groupId>
630 <artifactId>curator-x-discovery</artifactId>
631 <version>2.4.1</version>
632 </dependency>
Yuta HIGUCHI6ee19182014-04-11 09:48:35 -0700633 <dependency>
Yuta HIGUCHI042e82a2014-04-25 22:37:03 -0700634 <!-- findbugs suppression annotation -->
635 <groupId>com.google.code.findbugs</groupId>
636 <artifactId>findbugs</artifactId>
637 <version>${findbugs.version}</version>
Yuta HIGUCHI6ee19182014-04-11 09:48:35 -0700638 </dependency>
Yuta HIGUCHId209c0b2014-04-25 23:33:27 -0700639 <!-- Floodlight's dependencies -->
640 <dependency>
641 <groupId>args4j</groupId>
642 <artifactId>args4j</artifactId>
643 <version>2.0.25</version>
644 </dependency>
645 <dependency>
646 <groupId>com.googlecode.concurrentlinkedhashmap</groupId>
647 <artifactId>concurrentlinkedhashmap-lru</artifactId>
648 <version>1.4</version>
649 </dependency>
650 <dependency>
651 <!-- dependency to old version of netty? -->
652 <groupId>org.jboss.netty</groupId>
653 <artifactId>netty</artifactId>
654 <version>3.2.7.Final</version>
655 </dependency>
656 <!-- Dependency for libraries used for testing -->
657 <dependency>
658 <groupId>junit</groupId>
659 <artifactId>junit</artifactId>
660 <version>4.11</version>
661 <scope>test</scope>
662 </dependency>
663 <dependency>
664 <groupId>org.hamcrest</groupId>
665 <artifactId>hamcrest-core</artifactId>
666 <version>1.3</version>
667 <scope>test</scope>
668 </dependency>
669 <dependency>
670 <groupId>org.hamcrest</groupId>
671 <artifactId>hamcrest-library</artifactId>
672 <version>1.3</version>
673 <scope>test</scope>
674 </dependency>
675 <dependency>
676 <groupId>org.easymock</groupId>
677 <artifactId>easymock</artifactId>
678 <version>3.1</version>
679 <scope>test</scope>
680 </dependency>
681 <dependency>
682 <groupId>org.powermock</groupId>
683 <artifactId>powermock-module-junit4</artifactId>
684 <version>${powermock.version}</version>
685 <scope>test</scope>
686 </dependency>
687 <dependency>
688 <groupId>org.powermock</groupId>
689 <artifactId>powermock-api-easymock</artifactId>
690 <version>${powermock.version}</version>
691 <scope>test</scope>
692 </dependency>
HIGUCHI Yutae7aa9252013-06-06 14:54:21 -0700693 </dependencies>
Yuta HIGUCHI889958b2014-03-12 12:05:47 -0700694 <profiles>
695 <!-- Jenkins by default defines a property BUILD_NUMBER which is used to
696 enable the profile. -->
697 <profile>
698 <id>jenkins</id>
699 <activation>
700 <property>
701 <name>env.BUILD_NUMBER</name>
702 </property>
703 </activation>
704 <build>
705 <plugins>
706 <plugin>
707 <groupId>org.codehaus.mojo</groupId>
708 <artifactId>cobertura-maven-plugin</artifactId>
709 <version>${cobertura-maven-plugin.version}</version>
710 <configuration>
711 <formats>
712 <format>xml</format>
713 </formats>
Yuta HIGUCHI2d624d32014-06-03 00:09:10 -0700714 <quiet>true</quiet>
Yuta HIGUCHI889958b2014-03-12 12:05:47 -0700715 </configuration>
716 <executions>
717 <execution>
718 <phase>package</phase>
719 <goals>
720 <goal>cobertura</goal>
721 </goals>
722 </execution>
723 </executions>
724 </plugin>
725 </plugins>
726 </build>
727 </profile>
728 </profiles>
Pankaj Berde85c58f92013-10-03 18:26:08 -0700729</project>