Merge "Make distributionManagement reference groups"
[yangtools.git] / pom.xml
1 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
2     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
3
4     <modelVersion>4.0.0</modelVersion>
5     <artifactId>yangtools</artifactId>
6     <groupId>org.opendaylight.yangtools</groupId>
7     <version>0.6.0-SNAPSHOT</version>
8     <packaging>pom</packaging>
9     <prerequisites>
10         <maven>3.0.4</maven>
11     </prerequisites>
12
13     <properties>
14         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
15         <nexusproxy>http://nexus.opendaylight.org/content</nexusproxy>
16
17         <!-- Java Versions -->
18         <maven.compiler.source>1.7</maven.compiler.source>
19         <maven.compiler.target>1.7</maven.compiler.target>
20
21         <!-- Build Plugin Versions -->
22         <maven.bundle.version>2.4.0</maven.bundle.version>
23         <maven.jar.version>2.4</maven.jar.version>
24         <maven.javadoc.version>2.9.1</maven.javadoc.version>
25         <maven.release.version>2.4.2</maven.release.version>
26         <maven.source.version>2.2.1</maven.source.version>
27         <maven.surefire.version>2.16</maven.surefire.version>
28
29         <!-- Supporting Libraries -->
30         <commons.lang.version>3.1</commons.lang.version>
31         <junit.version>4.10</junit.version>
32         <slf4j.version>1.7.2</slf4j.version>
33         <guava.version>14.0.1</guava.version>
34         <xtend.version>2.4.3</xtend.version>
35         <groovy.version>2.1.6</groovy.version>
36         <mockito.version>1.9.5</mockito.version>
37     </properties>
38
39     <scm>
40         <connection>scm:git:ssh://git.opendaylight.org:29418/controller.git</connection>
41         <developerConnection>scm:git:ssh://git.opendaylight.org:29418/controller.git</developerConnection>
42         <url>https://wiki.opendaylight.org/view/YANG_Tools:Main</url>
43     </scm>
44
45     <modules>
46         <module>concepts</module>
47         <module>yang</module>
48         <module>code-generator</module>
49         <module>model</module>
50         <module>restconf</module>
51         <module>mockito-configuration</module>
52         <!-- module>third-party</module -->
53     </modules>
54
55     <pluginRepositories>
56         <pluginRepository>
57             <id>opendaylight-mirror</id>
58             <name>opendaylight-mirror</name>
59             <url>${nexusproxy}/groups/public/</url>
60             <snapshots>
61                 <enabled>false</enabled>
62             </snapshots>
63             <releases>
64                 <enabled>true</enabled>
65                 <updatePolicy>never</updatePolicy>
66             </releases>
67         </pluginRepository>
68     </pluginRepositories>
69
70     <repositories>
71         <repository>
72             <id>opendaylight-mirror</id>
73             <name>opendaylight-mirror</name>
74             <url>${nexusproxy}/groups/public/</url>
75             <snapshots>
76                 <enabled>false</enabled>
77             </snapshots>
78             <releases>
79                 <enabled>true</enabled>
80                 <updatePolicy>never</updatePolicy>
81             </releases>
82         </repository>
83     </repositories>
84
85
86     <dependencyManagement>
87         <dependencies>
88             <!-- Testing Dependencies -->
89             <dependency>
90                 <groupId>junit</groupId>
91                 <artifactId>junit</artifactId>
92                 <version>${junit.version}</version>
93                 <scope>test</scope>
94             </dependency>
95             <dependency>
96                 <groupId>org.mockito</groupId>
97                 <artifactId>mockito-all</artifactId>
98                 <version>${mockito.version}</version>
99                 <scope>test</scope>
100             </dependency>
101             <dependency>
102                 <groupId>org.mockito</groupId>
103                 <artifactId>mockito-core</artifactId>
104                 <version>${mockito.version}</version>
105                 <scope>test</scope>
106             </dependency>
107             <dependency>
108                 <groupId>org.slf4j</groupId>
109                 <artifactId>slf4j-simple</artifactId>
110                 <version>${slf4j.version}</version>
111                 <scope>test</scope>
112             </dependency>
113
114             <!-- Supporting Libraries -->
115             <dependency>
116                 <groupId>org.slf4j</groupId>
117                 <artifactId>slf4j-api</artifactId>
118                 <version>${slf4j.version}</version>
119             </dependency>
120             <dependency>
121                 <groupId>com.google.guava</groupId>
122                 <artifactId>guava</artifactId>
123                 <version>${guava.version}</version>
124             </dependency>
125             <dependency>
126                 <groupId>org.eclipse.xtend</groupId>
127                 <artifactId>org.eclipse.xtend.lib</artifactId>
128                 <version>${xtend.version}</version>
129             </dependency>
130             <dependency>
131                 <groupId>org.apache.commons</groupId>
132                 <artifactId>commons-lang3</artifactId>
133                 <version>${commons.lang.version}</version>
134             </dependency>
135
136             <!-- Plugin integration -->
137             <dependency>
138                 <groupId>org.sonatype.plexus</groupId>
139                 <artifactId>plexus-build-api</artifactId>
140                 <version>0.0.7</version>
141             </dependency>
142             <dependency>
143                 <groupId>org.codehaus.plexus</groupId>
144                 <artifactId>plexus-slf4j-logging</artifactId>
145                 <version>1.1</version>
146             </dependency>
147
148             <!-- Our artifacts -->
149             <dependency>
150                     <groupId>${project.groupId}</groupId>
151                     <artifactId>concepts</artifactId>
152                     <version>${project.version}</version>
153             </dependency>
154         </dependencies>
155     </dependencyManagement>
156
157     <dependencies>
158         <dependency>
159             <groupId>org.slf4j</groupId>
160             <artifactId>slf4j-simple</artifactId>
161         </dependency>
162     </dependencies>
163
164     <distributionManagement>
165         <!-- OpenDayLight Released artifact -->
166         <repository>
167             <id>opendaylight-mirror</id>
168             <name>opendaylight-mirror</name>
169             <url>${nexusproxy}/groups/public/</url>
170         </repository>
171         <site>
172             <id>${project.artifactId}-site</id>
173             <url>./</url>
174         </site>
175     </distributionManagement>
176
177     <build>
178         <pluginManagement>
179             <plugins>
180                 <plugin>
181                     <groupId>org.apache.maven.plugins</groupId>
182                     <artifactId>maven-jar-plugin</artifactId>
183                     <version>${maven.jar.version}</version>
184                     <configuration>
185                         <archive>
186                             <!-- Bundle OSGi Manifest created by maven-bundle-plugin 
187                                 into jar file -->
188                             <manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>
189                         </archive>
190                     </configuration>
191                 </plugin>
192                 <plugin>
193                     <groupId>org.apache.felix</groupId>
194                     <artifactId>maven-bundle-plugin</artifactId>
195                     <version>${maven.bundle.version}</version>
196                     <extensions>true</extensions>
197                     <executions>
198                         <execution>
199                             <id>bundle-manifest</id>
200                             <phase>process-classes</phase>
201                             <goals>
202                                 <goal>manifest</goal>
203                             </goals>
204                         </execution>
205                     </executions>
206                     <configuration>
207                         <instructions>
208                             <Bundle-Name>${project.groupId}.${project.artifactId}</Bundle-Name>
209                             <Export-Package>*</Export-Package>
210                         </instructions>
211                     </configuration>
212                 </plugin>
213                 <plugin>
214                     <groupId>org.eclipse.xtend</groupId>
215                     <artifactId>xtend-maven-plugin</artifactId>
216                     <version>${xtend.version}</version>
217                     <executions>
218                         <execution>
219                             <goals>
220                                 <goal>compile</goal>
221                             </goals>
222                             <configuration>
223                                 <outputDirectory>${basedir}/src/main/xtend-gen</outputDirectory>
224                             </configuration>
225                         </execution>
226                     </executions>
227                 </plugin>
228                 <plugin>
229                     <artifactId>maven-clean-plugin</artifactId>
230                     <version>2.5</version>
231                     <configuration>
232                         <filesets>
233                             <fileset>
234                                 <directory>${basedir}/src/main/xtend-gen</directory>
235                                 <includes>
236                                     <include>**</include>
237                                 </includes>
238                             </fileset>
239                         </filesets>
240                     </configuration>
241                 </plugin>
242                 <plugin>
243                     <groupId>org.eclipse.m2e</groupId>
244                     <artifactId>lifecycle-mapping</artifactId>
245                     <version>1.0.0</version>
246                     <configuration>
247                         <lifecycleMappingMetadata>
248                             <pluginExecutions>
249                                 <pluginExecution>
250                                     <pluginExecutionFilter>
251                                         <groupId>org.apache.felix</groupId>
252                                         <artifactId>maven-bundle-plugin</artifactId>
253                                         <versionRange>[1.0,)</versionRange>
254                                         <goals>
255                                             <goal>manifest</goal>
256                                         </goals>
257                                     </pluginExecutionFilter>
258                                     <action>
259                                         <execute />
260                                     </action>
261                                 </pluginExecution>
262                             </pluginExecutions>
263                         </lifecycleMappingMetadata>
264                     </configuration>
265                 </plugin>
266                 <plugin>
267                     <groupId>org.apache.maven.plugins</groupId>
268                     <artifactId>maven-javadoc-plugin</artifactId>
269                     <version>${maven.javadoc.version}</version>
270                     <configuration>
271                         <stylesheetfile>stylesheet.css</stylesheetfile>
272                     </configuration>
273                     <executions>
274                         <execution>
275                             <id>attach-javadocs</id>
276                             <goals>
277                                 <goal>jar</goal>
278                             </goals>
279                         </execution>
280                         <execution>
281                             <goals>
282                                 <goal>aggregate</goal>
283                             </goals>
284                             <phase>site</phase>
285                         </execution>
286                     </executions>
287                 </plugin>
288                 <plugin>
289                     <groupId>org.apache.maven.plugins</groupId>
290                     <artifactId>maven-release-plugin</artifactId>
291                     <version>${maven.release.version}</version>
292
293                     <!-- Since we have a maven plugin, we need to install it -->
294                     <configuration>
295                         <preparationGoals>clean install</preparationGoals>
296                         <completionGoals>clean install</completionGoals>
297                     </configuration>
298                 </plugin>
299             </plugins>
300         </pluginManagement>
301         <plugins>
302             <plugin>
303                 <groupId>org.apache.maven.plugins</groupId>
304                 <artifactId>maven-jar-plugin</artifactId>
305             </plugin>
306             <plugin>
307                 <groupId>org.apache.felix</groupId>
308                 <artifactId>maven-bundle-plugin</artifactId>
309             </plugin>
310             <plugin>
311                 <groupId>org.apache.maven.plugins</groupId>
312                 <artifactId>maven-source-plugin</artifactId>
313                 <version>${maven.source.version}</version>
314                 <executions>
315                     <execution>
316                         <id>attach-sources</id>
317                         <goals>
318                             <goal>jar</goal>
319                         </goals>
320                     </execution>
321                 </executions>
322             </plugin>
323             <plugin>
324                 <groupId>org.apache.maven.plugins</groupId>
325                 <artifactId>maven-javadoc-plugin</artifactId>
326             </plugin>
327         </plugins>
328     </build>
329
330     <reporting>
331         <plugins>
332             <plugin>
333                 <groupId>org.codehaus.mojo</groupId>
334                 <artifactId>findbugs-maven-plugin</artifactId>
335                 <version>2.5.3</version>
336                 <configuration>
337                     <effort>Max</effort>
338                     <threshold>Low</threshold>
339                     <goal>site</goal>
340                 </configuration>
341             </plugin>
342             <plugin>
343                 <groupId>org.codehaus.mojo</groupId>
344                 <artifactId>jdepend-maven-plugin</artifactId>
345                 <version>2.0-beta-2</version>
346             </plugin>
347         </plugins>
348     </reporting>
349 </project>