Merge "Bug 731: Moved list initialization in UnionTypeBuilder before constructing...
[yangtools.git] / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!-- vi: set et smarttab sw=4 tabstop=4: -->
3 <!--
4  Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
5
6  This program and the accompanying materials are made available under the
7  terms of the Eclipse Public License v1.0 which accompanies this distribution,
8  and is available at http://www.eclipse.org/legal/epl-v10.html
9 -->
10 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
11          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
12
13     <modelVersion>4.0.0</modelVersion>
14     <artifactId>yangtools</artifactId>
15     <groupId>org.opendaylight.yangtools</groupId>
16     <version>0.6.2-SNAPSHOT</version>
17     <packaging>pom</packaging>
18     <prerequisites>
19         <maven>3.0.4</maven>
20     </prerequisites>
21
22     <properties>
23         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
24         <nexusproxy>http://nexus.opendaylight.org/content</nexusproxy>
25
26         <!-- Java Versions -->
27         <maven.compiler.source>1.7</maven.compiler.source>
28         <maven.compiler.target>1.7</maven.compiler.target>
29
30         <!-- Build Plugin Versions -->
31         <maven.bundle.version>2.4.0</maven.bundle.version>
32         <maven.jar.version>2.3.2</maven.jar.version>
33         <maven.javadoc.version>2.9.1</maven.javadoc.version>
34         <maven.release.version>2.4.2</maven.release.version>
35         <maven.source.version>2.2.1</maven.source.version>
36         <maven.surefire.version>2.16</maven.surefire.version>
37
38         <!-- Supporting Libraries -->
39         <commons.lang.version>3.1</commons.lang.version>
40         <junit.version>4.10</junit.version>
41         <slf4j.version>1.7.2</slf4j.version>
42         <guava.version>14.0.1</guava.version>
43         <xtend.version>2.4.3</xtend.version>
44         <groovy.version>2.1.6</groovy.version>
45         <mockito.version>1.9.5</mockito.version>
46         <javassist.version>3.17.1-GA</javassist.version>
47         <ctrie.version>0.2.0</ctrie.version>
48     </properties>
49
50     <scm>
51         <connection>scm:git:ssh://git.opendaylight.org:29418/yangtools.git</connection>
52         <developerConnection>scm:git:ssh://git.opendaylight.org:29418/yangtools.git</developerConnection>
53         <url>https://wiki.opendaylight.org/view/YANG_Tools:Main</url>
54         <tag>HEAD</tag>
55     </scm>
56
57     <modules>
58         <module>code-generator</module>
59         <module>common</module>
60         <module>integration-test</module>
61         <module>model</module>
62         <module>restconf</module>
63         <module>websocket</module>
64         <module>yang</module>
65         <!-- module>third-party</module -->
66     </modules>
67
68     <pluginRepositories>
69         <!-- OpenDayLight Repo Mirror -->
70         <pluginRepository>
71             <id>opendaylight-mirror</id>
72             <name>opendaylight-mirror</name>
73             <url>${nexusproxy}/groups/public/</url>
74             <snapshots>
75                 <enabled>false</enabled>
76             </snapshots>
77             <releases>
78                 <enabled>true</enabled>
79                 <updatePolicy>never</updatePolicy>
80             </releases>
81         </pluginRepository>
82
83         <!-- OpenDayLight Snapshot artifact -->
84         <pluginRepository>
85             <id>opendaylight-snapshot</id>
86             <name>opendaylight-snapshot</name>
87             <url>${nexusproxy}/repositories/opendaylight.snapshot/</url>
88             <snapshots>
89                 <enabled>true</enabled>
90             </snapshots>
91             <releases>
92                 <enabled>false</enabled>
93             </releases>
94         </pluginRepository>
95     </pluginRepositories>
96
97     <repositories>
98         <!-- OpenDayLight Repo Mirror -->
99         <repository>
100             <id>opendaylight-mirror</id>
101             <name>opendaylight-mirror</name>
102             <url>${nexusproxy}/groups/public/</url>
103             <snapshots>
104                 <enabled>false</enabled>
105             </snapshots>
106             <releases>
107                 <enabled>true</enabled>
108                 <updatePolicy>never</updatePolicy>
109             </releases>
110         </repository>
111
112         <!-- OpenDayLight Snapshot artifact -->
113         <repository>
114             <id>opendaylight-snapshot</id>
115             <name>opendaylight-snapshot</name>
116             <url>${nexusproxy}/repositories/opendaylight.snapshot/</url>
117             <snapshots>
118                 <enabled>true</enabled>
119             </snapshots>
120             <releases>
121                 <enabled>false</enabled>
122             </releases>
123         </repository>
124     </repositories>
125
126     <dependencyManagement>
127         <dependencies>
128             <!-- Testing Dependencies -->
129             <dependency>
130                 <groupId>junit</groupId>
131                 <artifactId>junit</artifactId>
132                 <version>${junit.version}</version>
133                 <scope>test</scope>
134             </dependency>
135             <dependency>
136                 <groupId>org.mockito</groupId>
137                 <artifactId>mockito-all</artifactId>
138                 <version>${mockito.version}</version>
139                 <scope>test</scope>
140             </dependency>
141             <dependency>
142                 <groupId>org.mockito</groupId>
143                 <artifactId>mockito-core</artifactId>
144                 <version>${mockito.version}</version>
145                 <scope>test</scope>
146             </dependency>
147             <dependency>
148                 <groupId>org.slf4j</groupId>
149                 <artifactId>slf4j-simple</artifactId>
150                 <version>${slf4j.version}</version>
151                 <scope>test</scope>
152             </dependency>
153
154             <!-- Supporting Libraries -->
155             <dependency>
156                 <groupId>org.slf4j</groupId>
157                 <artifactId>slf4j-api</artifactId>
158                 <version>${slf4j.version}</version>
159             </dependency>
160             <dependency>
161                 <groupId>com.google.guava</groupId>
162                 <artifactId>guava</artifactId>
163                 <version>${guava.version}</version>
164             </dependency>
165             <dependency>
166                 <groupId>org.eclipse.xtend</groupId>
167                 <artifactId>org.eclipse.xtend.lib</artifactId>
168                 <version>${xtend.version}</version>
169             </dependency>
170             <dependency>
171                 <groupId>org.apache.commons</groupId>
172                 <artifactId>commons-lang3</artifactId>
173                 <version>${commons.lang.version}</version>
174             </dependency>
175             <dependency>
176                 <groupId>com.google.code.findbugs</groupId>
177                 <artifactId>jsr305</artifactId>
178                 <version>2.0.3</version>
179             </dependency>
180             <dependency>
181                 <groupId>com.github.romix</groupId>
182                 <artifactId>java-concurrent-hash-trie-map</artifactId>
183                 <version>${ctrie.version}</version>
184             </dependency>
185
186             <!-- Plugin integration -->
187             <dependency>
188                 <groupId>org.sonatype.plexus</groupId>
189                 <artifactId>plexus-build-api</artifactId>
190                 <version>0.0.7</version>
191             </dependency>
192             <dependency>
193                 <groupId>org.codehaus.plexus</groupId>
194                 <artifactId>plexus-slf4j-logging</artifactId>
195                 <version>1.1</version>
196             </dependency>
197             <dependency>
198                 <groupId>commons-io</groupId>
199                 <artifactId>commons-io</artifactId>
200                 <version>2.4</version>
201             </dependency>
202
203
204             <!-- Our artifacts -->
205             <dependency>
206                 <groupId>${project.groupId}</groupId>
207                 <artifactId>concepts</artifactId>
208                 <version>${project.version}</version>
209             </dependency>
210             <dependency>
211                 <groupId>${project.groupId}</groupId>
212                 <artifactId>object-cache-api</artifactId>
213                 <version>${project.version}</version>
214             </dependency>
215             <dependency>
216                 <groupId>${project.groupId}</groupId>
217                 <artifactId>object-cache-guava</artifactId>
218                 <version>${project.version}</version>
219             </dependency>
220             <dependency>
221                 <groupId>${project.groupId}</groupId>
222                 <artifactId>object-cache-noop</artifactId>
223                 <version>${project.version}</version>
224             </dependency>
225             <dependency>
226                 <groupId>${project.groupId}</groupId>
227                 <artifactId>util</artifactId>
228                 <version>${project.version}</version>
229             </dependency>
230         </dependencies>
231     </dependencyManagement>
232
233     <dependencies>
234         <dependency>
235             <groupId>org.slf4j</groupId>
236             <artifactId>slf4j-simple</artifactId>
237         </dependency>
238     </dependencies>
239
240     <distributionManagement>
241         <!-- OpenDayLight Released artifact -->
242         <repository>
243             <id>opendaylight-release</id>
244             <url>${nexusproxy}/repositories/opendaylight.release/</url>
245         </repository>
246         <!-- OpenDayLight Snapshot artifact -->
247         <snapshotRepository>
248             <id>opendaylight-snapshot</id>
249             <url>${nexusproxy}/repositories/opendaylight.snapshot/</url>
250         </snapshotRepository>
251         <site>
252             <id>${project.artifactId}-site</id>
253             <url>./</url>
254         </site>
255     </distributionManagement>
256
257     <build>
258         <pluginManagement>
259             <plugins>
260                 <plugin>
261                     <groupId>org.apache.maven.plugins</groupId>
262                     <artifactId>maven-jar-plugin</artifactId>
263                     <version>${maven.jar.version}</version>
264                     <configuration>
265                         <archive>
266                             <!-- Bundle OSGi Manifest created by maven-bundle-plugin
267                                 into jar file -->
268                             <manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>
269                         </archive>
270                     </configuration>
271                 </plugin>
272                 <plugin>
273                     <groupId>org.apache.felix</groupId>
274                     <artifactId>maven-bundle-plugin</artifactId>
275                     <version>${maven.bundle.version}</version>
276                     <extensions>true</extensions>
277                     <executions>
278                         <execution>
279                             <id>bundle-manifest</id>
280                             <phase>process-classes</phase>
281                             <goals>
282                                 <goal>manifest</goal>
283                             </goals>
284                         </execution>
285                     </executions>
286                     <configuration>
287                         <instructions>
288                             <Bundle-Name>${project.groupId}.${project.artifactId}</Bundle-Name>
289                             <!--
290                                                         <Export-Package>*</Export-Package>
291                             -->
292                         </instructions>
293                     </configuration>
294                 </plugin>
295                 <plugin>
296                     <groupId>org.eclipse.xtend</groupId>
297                     <artifactId>xtend-maven-plugin</artifactId>
298                     <version>${xtend.version}</version>
299                     <executions>
300                         <execution>
301                             <goals>
302                                 <goal>compile</goal>
303                             </goals>
304                             <configuration>
305                                 <outputDirectory>${basedir}/src/main/xtend-gen</outputDirectory>
306                             </configuration>
307                         </execution>
308                     </executions>
309                 </plugin>
310                 <plugin>
311                     <artifactId>maven-clean-plugin</artifactId>
312                     <version>2.5</version>
313                     <configuration>
314                         <filesets>
315                             <fileset>
316                                 <directory>${basedir}/src/main/xtend-gen</directory>
317                                 <includes>
318                                     <include>**</include>
319                                 </includes>
320                             </fileset>
321                         </filesets>
322                     </configuration>
323                 </plugin>
324                 <plugin>
325                     <groupId>org.eclipse.m2e</groupId>
326                     <artifactId>lifecycle-mapping</artifactId>
327                     <version>1.0.0</version>
328                     <configuration>
329                         <lifecycleMappingMetadata>
330                             <pluginExecutions>
331                                 <pluginExecution>
332                                     <pluginExecutionFilter>
333                                         <groupId>org.apache.felix</groupId>
334                                         <artifactId>maven-bundle-plugin</artifactId>
335                                         <versionRange>[1.0,)</versionRange>
336                                         <goals>
337                                             <goal>manifest</goal>
338                                         </goals>
339                                     </pluginExecutionFilter>
340                                     <action>
341                                         <execute/>
342                                     </action>
343                                 </pluginExecution>
344                             </pluginExecutions>
345                         </lifecycleMappingMetadata>
346                     </configuration>
347                 </plugin>
348                 <plugin>
349                     <groupId>org.apache.maven.plugins</groupId>
350                     <artifactId>maven-javadoc-plugin</artifactId>
351                     <version>${maven.javadoc.version}</version>
352                     <configuration>
353                         <stylesheetfile>stylesheet.css</stylesheetfile>
354                     </configuration>
355                     <executions>
356                         <execution>
357                             <id>attach-javadocs</id>
358                             <goals>
359                                 <goal>jar</goal>
360                             </goals>
361                         </execution>
362                         <execution>
363                             <goals>
364                                 <goal>aggregate</goal>
365                             </goals>
366                             <phase>site</phase>
367                         </execution>
368                     </executions>
369                 </plugin>
370                 <plugin>
371                     <groupId>org.apache.maven.plugins</groupId>
372                     <artifactId>maven-release-plugin</artifactId>
373                     <version>${maven.release.version}</version>
374
375                     <!-- Since we have a maven plugin, we need to install it -->
376                     <configuration>
377                         <preparationGoals>clean install</preparationGoals>
378                         <completionGoals>clean install</completionGoals>
379                     </configuration>
380                 </plugin>
381             </plugins>
382         </pluginManagement>
383         <plugins>
384             <plugin>
385                 <groupId>org.apache.maven.plugins</groupId>
386                 <artifactId>maven-jar-plugin</artifactId>
387             </plugin>
388             <plugin>
389                 <groupId>org.apache.felix</groupId>
390                 <artifactId>maven-bundle-plugin</artifactId>
391             </plugin>
392             <plugin>
393                 <groupId>org.apache.maven.plugins</groupId>
394                 <artifactId>maven-source-plugin</artifactId>
395                 <version>${maven.source.version}</version>
396                 <executions>
397                     <execution>
398                         <id>attach-sources</id>
399                         <goals>
400                             <goal>jar</goal>
401                         </goals>
402                     </execution>
403                 </executions>
404             </plugin>
405             <plugin>
406                 <groupId>org.apache.maven.plugins</groupId>
407                 <artifactId>maven-javadoc-plugin</artifactId>
408             </plugin>
409         </plugins>
410     </build>
411
412     <reporting>
413         <plugins>
414             <plugin>
415                 <groupId>org.codehaus.mojo</groupId>
416                 <artifactId>findbugs-maven-plugin</artifactId>
417                 <version>2.5.3</version>
418                 <configuration>
419                     <effort>Max</effort>
420                     <threshold>Low</threshold>
421                     <goal>site</goal>
422                 </configuration>
423             </plugin>
424             <plugin>
425                 <groupId>org.codehaus.mojo</groupId>
426                 <artifactId>jdepend-maven-plugin</artifactId>
427                 <version>2.0-beta-2</version>
428             </plugin>
429         </plugins>
430     </reporting>
431 </project>