Reworked pom files
[controller.git] / opendaylight / md-sal / 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     <modelVersion>4.0.0</modelVersion>
4     <groupId>org.opendaylight.controller</groupId>
5     <artifactId>sal-parent</artifactId>
6     <version>1.0-SNAPSHOT</version>
7     <packaging>pom</packaging>
8     <scm>
9         <connection>scm:git:ssh://git.opendaylight.org:29418/controller.git</connection>
10         <developerConnection>scm:git:ssh://git.opendaylight.org:29418/controller.git</developerConnection>
11         <url>https://wiki.opendaylight.org/view/OpenDaylight_Controller:MD-SAL</url>
12     </scm>
13
14     <modules>
15         <module>sal-common</module>
16         <module>sal-common-util</module>
17         <!-- Binding Independent -->
18         <module>sal-dom-api</module>
19         <module>sal-dom-broker</module>
20         <module>sal-dom-spi</module>
21         <!-- Binding Aware -->
22         <module>sal-binding-api</module>
23         <module>sal-binding-broker</module>
24         <!-- Samples -->
25         <module>samples</module>
26         <!-- Base Models -->
27         <module>model</module>
28         <!-- Compability Packages -->
29         <module>sal-compability</module>
30         <!-- Connectors -->
31         <module>sal-connector-api</module>
32         <module>sal-rest-connector</module>
33     </modules>
34
35     <properties>
36         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
37         <nexusproxy>http://nexus.opendaylight.org/content</nexusproxy>
38         <!-- Java Versions -->
39         <maven.compiler.source>1.7</maven.compiler.source>
40         <maven.compiler.target>1.7</maven.compiler.target>
41
42         <!-- Plugin Versions -->
43         <bundle.plugin.version>2.4.0</bundle.plugin.version>
44         <releaseplugin.version>2.3.2</releaseplugin.version>
45
46         <!-- Dependency Versions -->
47         <slf4j.version>1.7.2</slf4j.version>
48         <yang.version>0.5.8</yang.version>
49         <yang.codegen.version>0.5.8</yang.codegen.version>
50         <guava.version>14.0.1</guava.version>
51         <osgi.core.version>5.0.0</osgi.core.version>
52         <junit.version>4.8.1</junit.version>
53         <xtend.version>2.4.3</xtend.version>
54     </properties>
55
56     <pluginRepositories>
57         <pluginRepository>
58             <id>central</id>
59             <name>maven repo1</name>
60             <url>http://repo1.maven.org/maven2</url>
61             <snapshots>
62                 <enabled>false</enabled>
63             </snapshots>
64             <releases>
65                 <enabled>true</enabled>
66             </releases>
67         </pluginRepository>
68         <pluginRepository>
69             <id>opendaylight.release</id>
70             <name>opendaylight.release</name>
71             <url>${nexusproxy}/repositories/opendaylight.release/</url>
72         </pluginRepository>
73     </pluginRepositories>
74
75
76     <repositories>
77         <repository>
78             <id>opendaylight-release</id>
79             <name>opendaylight-release</name>
80             <url>${nexusproxy}/repositories/opendaylight.release/</url>
81         </repository>
82         <!-- OpenDayLight Snapshot artifact -->
83         <repository>
84             <id>opendaylight-snapshot</id>
85             <name>opendaylight-snapshot</name>
86             <url>${nexusproxy}/repositories/opendaylight.snapshot/</url>
87         </repository>
88         <repository>
89             <id>thirdparty</id>
90             <name>thirdparty</name>
91             <url>${nexusproxy}/repositories/thirdparty/</url>
92         </repository>
93         <repository>
94             <id>central</id>
95             <name>central</name>
96             <url>http://repo1.maven.org/maven2</url>
97             <snapshots>
98                 <enabled>false</enabled>
99             </snapshots>
100             <releases>
101                 <enabled>true</enabled>
102             </releases>
103         </repository>
104     </repositories>
105
106     <distributionManagement>
107         <!-- OpenDayLight Released artifact -->
108         <repository>
109             <id>opendaylight-release</id>
110             <url>${nexusproxy}/repositories/opendaylight.release/</url>
111         </repository>
112         <!-- OpenDayLight Snapshot artifact -->
113         <snapshotRepository>
114             <id>opendaylight-snapshot</id>
115             <url>${nexusproxy}/repositories/opendaylight.snapshot/</url>
116         </snapshotRepository>
117         <!-- Site deployment -->
118         <site>
119             <id>website</id>
120             <url>${sitedeploy}</url>
121         </site>
122     </distributionManagement>
123
124
125     <dependencyManagement>
126         <dependencies>
127
128
129
130
131             <!-- YANG Tools Dependencies -->
132             <dependency>
133                 <groupId>org.opendaylight.yangtools</groupId>
134                 <artifactId>yang-binding</artifactId>
135                 <version>${yang.version}</version>
136             </dependency>
137             <dependency>
138                 <groupId>org.opendaylight.yangtools</groupId>
139                 <artifactId>yang-common</artifactId>
140                 <version>${yang.version}</version>
141             </dependency>
142             <dependency>
143                 <groupId>org.opendaylight.yangtools</groupId>
144                 <artifactId>yang-data-api</artifactId>
145                 <version>${yang.version}</version>
146             </dependency>
147             <dependency>
148                 <groupId>org.opendaylight.yangtools</groupId>
149                 <artifactId>yang-model-api</artifactId>
150                 <version>${yang.version}</version>
151             </dependency>
152             <dependency>
153                 <groupId>org.opendaylight.yangtools</groupId>
154                 <artifactId>yang-data-util</artifactId>
155                 <version>${yang.version}</version>
156             </dependency>
157             <!-- SAL Dependencies -->
158             <dependency>
159                 <groupId>${project.groupId}</groupId>
160                 <artifactId>sal-connector-api</artifactId>
161                 <version>${project.version}</version>
162             </dependency>
163
164             <!-- Supporting Libraries -->
165             <dependency>
166                 <groupId>org.slf4j</groupId>
167                 <artifactId>slf4j-api</artifactId>
168                 <version>${slf4j.version}</version>
169             </dependency>
170             <dependency>
171                 <groupId>com.google.guava</groupId>
172                 <artifactId>guava</artifactId>
173                 <version>${guava.version}</version>
174             </dependency>
175             <dependency>
176                 <groupId>org.eclipse.xtend</groupId>
177                 <artifactId>org.eclipse.xtend.lib</artifactId>
178                 <version>${xtend.version}</version>
179             </dependency>
180
181             <!-- Testing Dependencies -->
182             <dependency>
183                 <groupId>junit</groupId>
184                 <artifactId>junit</artifactId>
185                 <version>${junit.version}</version>
186                 <scope>test</scope>
187             </dependency>
188             <dependency>
189                 <groupId>org.mockito</groupId>
190                 <artifactId>mockito-all</artifactId>
191                 <version>1.9.5</version>
192                 <scope>test</scope>
193             </dependency>
194         </dependencies>
195     </dependencyManagement>
196     <build>
197         <pluginManagement>
198             <plugins>
199                 <plugin>
200                     <groupId>org.apache.maven.plugins</groupId>
201                     <artifactId>maven-release-plugin</artifactId>
202                     <version>${releaseplugin.version}</version>
203                 </plugin>
204                 <plugin>
205                     <groupId>org.apache.felix</groupId>
206                     <artifactId>maven-bundle-plugin</artifactId>
207                     <version>${bundle.plugin.version}</version>
208                     <extensions>true</extensions>
209                     <executions>
210                         <execution>
211                             <id>bundle-manifest</id>
212                             <phase>process-classes</phase>
213                             <goals>
214                                 <goal>manifest</goal>
215                             </goals>
216                         </execution>
217                     </executions>
218                     <configuration>
219                         <instructions>
220                             <Bundle-Name>${project.groupId}.${project.artifactId}</Bundle-Name>
221                         </instructions>
222                         <manifestLocation>${project.basedir}/META-INF</manifestLocation>
223                     </configuration>
224                 </plugin>
225                 <plugin>
226                     <artifactId>maven-jar-plugin</artifactId>
227                     <configuration>
228                         <archive>
229                             <!-- Bundle OSGi Manifest created by maven-bundle-plugin into jar file -->
230                             <manifestFile>${project.basedir}/META-INF/MANIFEST.MF</manifestFile>
231                         </archive>
232                     </configuration>
233                 </plugin>
234                 <plugin>
235                     <groupId>org.eclipse.xtend</groupId>
236                     <artifactId>xtend-maven-plugin</artifactId>
237                     <version>${xtend.version}</version>
238                     <executions>
239                         <execution>
240                             <goals>
241                                 <goal>compile</goal>
242                             </goals>
243                             <configuration>
244                                 <outputDirectory>${basedir}/src/main/xtend-gen</outputDirectory>
245                             </configuration>
246                         </execution>
247                     </executions>
248                 </plugin>
249                 <plugin>
250                     <artifactId>maven-clean-plugin</artifactId>
251                     <configuration>
252                         <filesets>
253                             <fileset>
254                                 <directory>${basedir}/src/main/xtend-gen</directory>
255                                 <includes>
256                                     <include>**</include>
257                                 </includes>
258                             </fileset>
259                         </filesets>
260                     </configuration>
261                 </plugin>
262             </plugins>
263         </pluginManagement>
264         <plugins>
265             <plugin>
266                 <groupId>org.apache.felix</groupId>
267                 <artifactId>maven-bundle-plugin</artifactId>
268             </plugin>
269             <plugin>
270                 <groupId>org.apache.maven.plugins</groupId>
271                 <artifactId>maven-jar-plugin</artifactId>
272             </plugin>
273             <plugin>
274                 <groupId>org.apache.maven.plugins</groupId>
275                 <artifactId>maven-javadoc-plugin</artifactId>
276                 <version>2.8.1</version>
277                 <configuration>
278                     <stylesheet>maven</stylesheet>
279                     <failOnError>false</failOnError>
280                 </configuration>
281                 <executions>
282                     <execution>
283                         <goals>
284                             <goal>aggregate</goal>
285                         </goals>
286                         <phase>site</phase>
287                     </execution>
288                 </executions>
289             </plugin>
290         </plugins>
291     </build>
292     <reporting>
293         <plugins>
294             <plugin>
295                 <groupId>org.codehaus.mojo</groupId>
296                 <artifactId>findbugs-maven-plugin</artifactId>
297                 <version>2.4.0</version>
298                 <configuration>
299                     <effort>Max</effort>
300                     <threshold>Low</threshold>
301                     <goal>site</goal>
302                 </configuration>
303             </plugin>
304             <plugin>
305                 <groupId>org.codehaus.mojo</groupId>
306                 <artifactId>jdepend-maven-plugin</artifactId>
307                 <version>2.0-beta-2</version>
308             </plugin>
309         </plugins>
310     </reporting>
311 </project>