498b201504e048ca048b41ea8d2d6b3f9efddfd5
[openflowjava.git] / parent / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
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     <parent>
5         <groupId>org.opendaylight.odlparent</groupId>
6         <artifactId>odlparent</artifactId>
7         <version>1.9.0-SNAPSHOT</version>
8         <relativePath/>
9     </parent>
10
11     <groupId>org.opendaylight.openflowjava</groupId>
12     <artifactId>openflowjava-parent</artifactId>
13     <version>0.10.0-SNAPSHOT</version>
14     <packaging>pom</packaging>
15     <!-- <name> formatting is used by autorelease to parse and notify projects on
16          build failure. Please do not modify this unless you have a good reason. -->
17     <name>ODL :: openflowjava :: ${project.artifactId}</name>
18     <description>
19         Openflow protocol library - serializes and deserializes openflow messages + handles connections with openflow devices.
20     </description>
21     <url>https://wiki.opendaylight.org/view/Openflow_Protocol_Library:Main</url>
22
23     <licenses>
24         <license>
25             <name>The Eclipse Public License v1.0</name>
26             <url>http://www.eclipse.org/legal/epl-v10.html</url>
27             <distribution>repo</distribution>
28         </license>
29     </licenses>
30
31     <scm>
32         <connection>scm:git:ssh://git.opendaylight.org:29418/openflowjava.git</connection>
33         <developerConnection>scm:git:ssh://git.opendaylight.org:29418/openflowjava.git</developerConnection>
34         <url>https://wiki.opendaylight.org/view/Openflow_Protocol_Library:Main</url>
35         <tag>HEAD</tag>
36     </scm>
37
38     <developers>
39         <developer>
40             <name>Michal Polkorab</name>
41             <email>michal.polkorab@pantheon.sk</email>
42             <organization>Pantheon Technologies</organization>
43             <organizationUrl>https://www.pantheon.sk/en/</organizationUrl>
44         </developer>
45         <developer>
46             <name>Michal Rehak</name>
47             <email>mirehak@cisco.com</email>
48             <organization>Cisco Systems</organization>
49             <organizationUrl>www.cisco.com</organizationUrl>
50         </developer>
51     </developers>
52
53     <properties>
54         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
55         <jmxGeneratorPath>${project.build.directory}/yang-gen-config</jmxGeneratorPath>
56         <karaf.distro.empty.version>1.9.0-SNAPSHOT</karaf.distro.empty.version>
57         <salGeneratorPath>${project.build.directory}/yang-gen-sal</salGeneratorPath>
58
59         <config.version>0.7.0-SNAPSHOT</config.version>
60         <controller.mdsal.version>1.6.0-SNAPSHOT</controller.mdsal.version>
61         <mdsal.model.version>0.11.0-SNAPSHOT</mdsal.model.version>
62         <yangtools.version>1.2.0-SNAPSHOT</yangtools.version>
63         <argparse4j.version>0.7.0</argparse4j.version>
64     </properties>
65
66     <dependencyManagement>
67         <dependencies>
68             <dependency>
69               <groupId>org.opendaylight.openflowjava</groupId>
70               <artifactId>openflowjava-artifacts</artifactId>
71               <version>${project.version}</version>
72               <type>pom</type>
73               <scope>import</scope>
74             </dependency>
75             <dependency>
76               <groupId>org.opendaylight.yangtools</groupId>
77               <artifactId>yangtools-artifacts</artifactId>
78               <version>${yangtools.version}</version>
79               <type>pom</type>
80               <scope>import</scope>
81             </dependency>
82             <dependency>
83               <groupId>org.opendaylight.controller</groupId>
84               <artifactId>config-artifacts</artifactId>
85               <version>${config.version}</version>
86               <type>pom</type>
87               <scope>import</scope>
88             </dependency>
89             <dependency>
90               <groupId>org.opendaylight.controller</groupId>
91               <artifactId>mdsal-artifacts</artifactId>
92               <version>${controller.mdsal.version}</version>
93               <scope>import</scope>
94               <type>pom</type>
95             </dependency>
96             <dependency>
97                 <groupId>net.sourceforge.argparse4j</groupId>
98                 <artifactId>argparse4j</artifactId>
99                 <version>${argparse4j.version}</version>
100             </dependency>
101         </dependencies>
102     </dependencyManagement>
103
104     <build>
105         <plugins>
106             <plugin>
107                 <groupId>org.apache.maven.plugins</groupId>
108                 <artifactId>maven-compiler-plugin</artifactId>
109             </plugin>
110             <plugin>
111                 <artifactId>maven-source-plugin</artifactId>
112                 <executions>
113                     <execution>
114                         <id>attach-sources</id>
115                         <phase>deploy</phase>
116                         <goals>
117                             <goal>jar-no-fork</goal>
118                         </goals>
119                     </execution>
120                 </executions>
121             </plugin>
122             <plugin>
123               <groupId>org.apache.felix</groupId>
124               <artifactId>maven-bundle-plugin</artifactId>
125               <extensions>true</extensions>
126               <configuration>
127                 <instructions>
128                   <Bundle-Name>${project.groupId}.${project.artifactId}</Bundle-Name>
129                 </instructions>
130                 <manifestLocation>${project.build.directory}/META-INF</manifestLocation>
131               </configuration>
132             </plugin>
133             <plugin>
134               <groupId>org.apache.maven.plugins</groupId>
135               <artifactId>maven-checkstyle-plugin</artifactId>
136               <version>${checkstyle.version}</version>
137               <configuration>
138                 <failOnViolation>false</failOnViolation>
139                 <configLocation>checkstyle-logging.xml</configLocation>
140                 <consoleOutput>true</consoleOutput>
141                 <includeTestSourceDirectory>true</includeTestSourceDirectory>
142                 <sourceDirectory>${project.basedir}</sourceDirectory>
143                 <includes>**\/*.java,**\/*.xml,**\/*.ini,**\/*.sh,**\/*.bat,**\/*.yang</includes>
144                 <excludes>**\/target\/,**\/bin\/,**\/target-ide\/,**\/src/main/yang-gen-config\/,**\/src/main/yang-gen-sal\/</excludes>
145               </configuration>
146               <dependencies>
147                 <dependency>
148                 <groupId>org.opendaylight.yangtools</groupId>
149                 <artifactId>checkstyle-logging</artifactId>
150                 <version>${yangtools.version}</version>
151                 </dependency>
152               </dependencies>
153               <executions>
154                 <execution>
155                 <goals>
156                   <goal>check</goal>
157                 </goals>
158                 </execution>
159               </executions>
160             </plugin>
161             <plugin>
162                 <groupId>org.codehaus.mojo</groupId>
163                 <artifactId>build-helper-maven-plugin</artifactId>
164                 <executions>
165                   <execution>
166                     <id>add-yang-sources</id>
167                     <phase>generate-sources</phase>
168                     <goals>
169                       <goal>add-source</goal>
170                     </goals>
171                     <configuration>
172                       <sources>
173                         <source>${jmxGeneratorPath}</source>
174                         <source>${salGeneratorPath}</source>
175                       </sources>
176                     </configuration>
177                   </execution>
178                 </executions>
179             </plugin>
180         </plugins>
181         <pluginManagement>
182             <plugins>
183                 <plugin>
184                     <groupId>org.opendaylight.yangtools</groupId>
185                     <artifactId>yang-maven-plugin</artifactId>
186                     <version>${yangtools.version}</version>
187                 </plugin>
188                 <plugin>
189                     <groupId>org.codehaus.mojo</groupId>
190                     <artifactId>build-helper-maven-plugin</artifactId>
191                     <version>1.8</version>
192                     <executions>
193                         <execution>
194                             <id>add-source</id>
195                             <goals>
196                                 <goal>add-source</goal>
197                             </goals>
198                             <phase>generate-sources</phase>
199                             <configuration>
200                                 <sources>
201                                     <source>src/main/yang</source>
202                                 </sources>
203                             </configuration>
204                         </execution>
205                     </executions>
206                 </plugin>
207                 <!-- Ignore/Execute plugin execution -->
208                 <plugin>
209                   <groupId>org.eclipse.m2e</groupId>
210                   <artifactId>lifecycle-mapping</artifactId>
211                   <version>1.0.0</version>
212                   <configuration>
213                     <lifecycleMappingMetadata>
214                       <pluginExecutions>
215                         <pluginExecution>
216                           <pluginExecutionFilter>
217                             <groupId>org.codehaus.mojo</groupId>
218                             <artifactId>properties-maven-plugin</artifactId>
219                             <versionRange>[0.0,)</versionRange>
220                             <goals>
221                               <goal>set-system-properties</goal>
222                             </goals>
223                           </pluginExecutionFilter>
224                           <action>
225                             <ignore/>
226                           </action>
227                         </pluginExecution>
228                         <pluginExecution>
229                           <pluginExecutionFilter>
230                             <groupId>org.jacoco</groupId>
231                             <artifactId>jacoco-maven-plugin</artifactId>
232                             <versionRange>[0.0,)</versionRange>
233                             <goals>
234                               <goal>prepare-agent</goal>
235                               <goal>pre-test</goal>
236                               <goal>post-test</goal>
237                             </goals>
238                           </pluginExecutionFilter>
239                           <action>
240                             <ignore/>
241                           </action>
242                         </pluginExecution>
243                         <pluginExecution>
244                           <pluginExecutionFilter>
245                             <groupId>org.ops4j.pax.exam</groupId>
246                             <artifactId>maven-paxexam-plugin</artifactId>
247                             <versionRange>[1.2.4,)</versionRange>
248                             <goals>
249                               <goal>generate-depends-file</goal>
250                             </goals>
251                           </pluginExecutionFilter>
252                           <action>
253                             <execute>
254                               <runOnIncremental>false</runOnIncremental>
255                             </execute>
256                           </action>
257                         </pluginExecution>
258                         <pluginExecution>
259                           <pluginExecutionFilter>
260                             <groupId>org.apache.maven.plugins</groupId>
261                             <artifactId>maven-checkstyle-plugin</artifactId>
262                             <versionRange>[2.0,)</versionRange>
263                             <goals>
264                               <goal>check</goal>
265                             </goals>
266                           </pluginExecutionFilter>
267                           <action>
268                             <ignore/>
269                           </action>
270                         </pluginExecution>
271                         <pluginExecution>
272                           <pluginExecutionFilter>
273                             <groupId>org.codehaus.groovy.maven</groupId>
274                             <artifactId>gmaven-plugin</artifactId>
275                             <versionRange>1.0</versionRange>
276                             <goals>
277                               <goal>execute</goal>
278                             </goals>
279                           </pluginExecutionFilter>
280                           <action>
281                             <ignore/>
282                           </action>
283                         </pluginExecution>
284                         <pluginExecution>
285                           <pluginExecutionFilter>
286                             <groupId>org.apache.maven.plugins</groupId>
287                             <artifactId>maven-enforcer-plugin</artifactId>
288                             <versionRange>${enforcer.version}</versionRange>
289                             <goals>
290                               <goal>enforce</goal>
291                             </goals>
292                           </pluginExecutionFilter>
293                           <action>
294                             <ignore/>
295                           </action>
296                         </pluginExecution>
297                       </pluginExecutions>
298                     </lifecycleMappingMetadata>
299                   </configuration>
300                 </plugin>
301             </plugins>
302         </pluginManagement>
303     </build>
304     <reporting>
305         <plugins>
306             <plugin>
307                 <groupId>org.codehaus.mojo</groupId>
308                 <artifactId>findbugs-maven-plugin</artifactId>
309                 <version>2.5.2</version>
310                 <configuration>
311                     <effort>Max</effort>
312                     <threshold>Low</threshold>
313                     <goal>site</goal>
314                 </configuration>
315             </plugin>
316             <plugin>
317               <artifactId>maven-jxr-plugin</artifactId>
318               <version>2.3</version>
319               <configuration>
320                 <aggregate>true</aggregate>
321                 <linkJavadoc>true</linkJavadoc>
322               </configuration>
323             </plugin>
324
325             <plugin>
326                 <groupId>org.codehaus.mojo</groupId>
327                 <artifactId>jdepend-maven-plugin</artifactId>
328                 <version>2.0-beta-2</version>
329             </plugin>
330         </plugins>
331     </reporting>
332     <profiles>
333         <profile>
334             <id>viewbuild</id>
335             <activation>
336                 <activeByDefault>true</activeByDefault>
337             </activation>
338             <properties>
339                 <build.suffix>${project.version}</build.suffix>
340             </properties>
341         </profile>
342         <profile>
343             <id>jenkins</id>
344             <activation>
345                 <property>
346                     <name>BUILDSUFFIX</name>
347                 </property>
348             </activation>
349             <properties>
350                 <build.suffix>${BUILDSUFFIX}</build.suffix>
351             </properties>
352         </profile>
353         <profile>
354             <id>repoBuild</id>
355             <build>
356                 <plugins>
357                     <plugin>
358                         <groupId>org.apache.maven.plugins</groupId>
359                         <artifactId>maven-javadoc-plugin</artifactId>
360                         <version>2.8.1</version>
361                         <executions>
362                             <execution>
363                                 <goals>
364                                     <goal>aggregate</goal>
365                                 </goals>
366                                 <phase>site</phase>
367                             </execution>
368                             <execution>
369                                 <id>attach-javadocs</id>
370                                 <goals>
371                                     <goal>jar</goal>
372                                 </goals>
373                             </execution>
374                         </executions>
375                     </plugin>
376                     <plugin>
377                         <groupId>org.apache.maven.plugins</groupId>
378                         <artifactId>maven-source-plugin</artifactId>
379                         <executions>
380                             <execution>
381                                 <id>attach-sources</id>
382                                 <phase>package</phase>
383                                 <goals>
384                                     <goal>jar-no-fork</goal>
385                                 </goals>
386                             </execution>
387                         </executions>
388                     </plugin>
389                 </plugins>
390             </build>
391         </profile>
392     </profiles>
393 </project>