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