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