ODLMICRO-31: Fix the running of micro
[odlmicro.git] / micro-core / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3  Copyright © 2018 Red Hat, Inc. and others. All rights reserved.
4
5  This program and the accompanying materials are made available under the
6  terms of the Eclipse Public License v1.0 which accompanies this distribution,
7  and is available at http://www.eclipse.org/legal/epl-v10.html
8 -->
9 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
10   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
11   <modelVersion>4.0.0</modelVersion>
12
13   <parent>
14     <groupId>org.opendaylight.odlmicro</groupId>
15     <artifactId>micro-aggregator</artifactId>
16     <version>1.0.0-SNAPSHOT</version>
17     <relativePath>../</relativePath>
18   </parent>
19
20   <groupId>org.opendaylight.odlmicro</groupId>
21   <artifactId>micro-core</artifactId>
22   <version>1.0.0-SNAPSHOT</version>
23
24   <dependencies>
25
26     <dependency>
27       <groupId>org.immutables</groupId>
28       <artifactId>value</artifactId>
29     </dependency>
30
31     <dependency>
32       <groupId>org.apache.aries.blueprint</groupId>
33       <artifactId>blueprint-maven-plugin-annotation</artifactId>
34       <optional>true</optional>
35     </dependency>
36     <!-- TODO Remove pax-web-api dependency eventually -->
37     <dependency>
38       <groupId>org.ops4j.pax.web</groupId>
39       <artifactId>pax-web-api</artifactId>
40     </dependency>
41
42     <!--mdsal-->
43     <dependency>
44       <groupId>io.netty</groupId>
45       <artifactId>netty-common</artifactId>
46       <version>4.1.31.Final</version>
47     </dependency>
48
49     <!--infrautils-->
50     <dependency>
51       <groupId>org.opendaylight.infrautils</groupId>
52       <artifactId>diagstatus-api</artifactId>
53     </dependency>
54
55     <!--infrautils-->
56     <dependency>
57       <groupId>org.opendaylight.infrautils</groupId>
58       <artifactId>diagstatus-impl</artifactId>
59     </dependency>
60
61     <!--infrautils-->
62     <dependency>
63       <groupId>org.opendaylight.infrautils</groupId>
64       <artifactId>diagstatus-web</artifactId>
65     </dependency>
66
67
68     <!--infrautils-->
69     <dependency>
70       <groupId>org.opendaylight.infrautils</groupId>
71       <artifactId>metrics-impl</artifactId>
72     </dependency>
73
74     <!--infrautils-->
75     <dependency>
76       <groupId>org.opendaylight.infrautils</groupId>
77       <artifactId>jobcoordinator-api</artifactId>
78     </dependency>
79
80     <!--infrautils-->
81     <dependency>
82       <groupId>org.opendaylight.infrautils</groupId>
83       <artifactId>jobcoordinator-impl</artifactId>
84     </dependency>
85
86     <!--controller-->
87     <dependency>
88       <groupId>org.opendaylight.controller</groupId>
89       <artifactId>netty-event-executor-config</artifactId>
90       <version>0.10.0</version>
91     </dependency>
92
93     <!--controller-->
94     <dependency>
95       <groupId>org.opendaylight.controller</groupId>
96       <artifactId>netty-threadgroup-config</artifactId>
97       <version>0.10.0</version>
98     </dependency>
99
100     <!--controller-->
101     <dependency>
102       <groupId>org.opendaylight.controller</groupId>
103       <artifactId>netty-timer-config</artifactId>
104       <version>0.10.0</version>
105     </dependency>
106
107     <!--controller-->
108     <dependency>
109       <groupId>org.opendaylight.controller</groupId>
110       <artifactId>threadpool-config-impl</artifactId>
111       <version>0.10.0</version>
112     </dependency>
113
114     <!--mdsal-->
115     <dependency>
116       <groupId>org.opendaylight.mdsal</groupId>
117       <artifactId>mdsal-eos-dom-simple</artifactId>
118     </dependency>
119
120     <!--mdsal-->
121     <dependency>
122       <groupId>org.opendaylight.mdsal</groupId>
123       <artifactId>mdsal-eos-binding-api</artifactId>
124     </dependency>
125
126     <!--mdsal-->
127     <dependency>
128       <groupId>org.opendaylight.mdsal</groupId>
129       <artifactId>mdsal-singleton-common-api</artifactId>
130     </dependency>
131
132     <!--mdsal-->
133     <dependency>
134       <groupId>org.opendaylight.mdsal</groupId>
135       <artifactId>mdsal-singleton-dom-impl</artifactId>
136     </dependency>
137
138     <!--mdsal-->
139     <dependency>
140       <groupId>org.opendaylight.mdsal</groupId>
141       <artifactId>mdsal-eos-binding-adapter</artifactId>
142     </dependency>
143
144     <!--mdsal-->
145     <dependency>
146       <groupId>org.opendaylight.mdsal</groupId>
147       <artifactId>mdsal-binding-dom-adapter</artifactId>
148     </dependency>
149
150     <!--mdsal-->
151     <dependency>
152       <groupId>org.opendaylight.controller</groupId>
153       <artifactId>sal-binding-broker-impl</artifactId>
154     </dependency>
155
156     <!--restconf-->
157     <dependency>
158       <groupId>org.opendaylight.netconf</groupId>
159       <artifactId>restconf-nb-rfc8040</artifactId>
160     </dependency>
161
162     <dependency>
163       <groupId>org.opendaylight.netconf</groupId>
164       <artifactId>restconf-nb-bierman02</artifactId>
165     </dependency>
166
167     <!--aaa-->
168     <dependency>
169        <groupId>org.opendaylight.aaa</groupId>
170        <artifactId>aaa-cert</artifactId>
171        <version>0.9.0</version>
172        <scope>compile</scope>
173     </dependency>
174
175     <!--aaa-->
176     <dependency>
177        <groupId>org.opendaylight.aaa</groupId>
178        <artifactId>aaa-encrypt-service-impl</artifactId>
179        <version>0.9.0</version>
180     </dependency>
181
182     <!--aaa-->
183     <dependency>
184        <groupId>org.opendaylight.aaa</groupId>
185        <artifactId>aaa-shiro</artifactId>
186        <version>0.9.0</version>
187     </dependency>
188
189     <!--aaa -->
190     <!--dependency>
191        <groupId>org.opendaylight.aaa</groupId>
192        <artifactId>aaa-shiro-api</artifactId>
193        <version>0.9.0</version>
194     </dependency-->
195
196     <!--aaa-->
197     <!--dependency>
198        <groupId>org.opendaylight.aaa</groupId>
199        <artifactId>aaa-shiro-act</artifactId>
200        <version>0.9.0</version>
201     </dependency-->
202
203     <!--aaa-->
204     <dependency>
205       <groupId>org.opendaylight.aaa</groupId>
206       <artifactId>aaa-authn-api</artifactId>
207        <version>0.9.0</version>
208     </dependency>
209
210     <!--aaa-->
211     <dependency>
212       <groupId>org.opendaylight.netconf</groupId>
213       <artifactId>aaa-authn-odl-plugin</artifactId>
214     </dependency>
215
216     <dependency>
217       <groupId>org.apache.karaf.shell</groupId>
218       <artifactId>org.apache.karaf.shell.core</artifactId>
219     </dependency>
220
221     <dependency>
222       <groupId>org.opendaylight.aaa.web</groupId>
223       <artifactId>web-jetty-impl</artifactId>
224       <version>0.9.0</version>
225     </dependency>
226     <dependency>
227       <groupId>org.opendaylight.aaa.web</groupId>
228       <artifactId>servlet-jersey2</artifactId>
229       <version>0.9.0</version>
230     </dependency>
231
232     <!--serviceutils-->
233     <dependency>
234       <groupId>org.opendaylight.serviceutils</groupId>
235       <artifactId>srm-api</artifactId>
236       <version>0.3.0</version>
237     </dependency>
238
239     <!--serviceutils-->
240     <dependency>
241       <groupId>org.opendaylight.serviceutils</groupId>
242       <artifactId>srm-impl</artifactId>
243       <version>0.3.0</version>
244     </dependency>
245
246     <!--serviceutils-->
247     <dependency>
248       <groupId>org.opendaylight.serviceutils</groupId>
249       <artifactId>upgrade</artifactId>
250       <version>0.3.0</version>
251       <scope>compile</scope>
252     </dependency>
253
254     <!-- TODO Align dropwizard.metrics in odlparent, controller and infrautils and ditch this -->
255     <dependency>
256       <groupId>io.dropwizard.metrics</groupId>
257       <artifactId>metrics-core</artifactId>
258       <!-- This version must be kept in line with the one used in metrics-impl -->
259       <version>4.0.3</version>
260     </dependency>
261     <dependency>
262       <groupId>io.dropwizard.metrics</groupId>
263       <artifactId>metrics-jvm</artifactId>
264       <!-- This version must be kept in line with the one used in metrics-impl -->
265       <version>4.0.3</version>
266     </dependency>
267
268     <!-- Implementation specials, these are not transitively inherited via the Karaf feature dependency -->
269     <dependency>
270       <groupId>org.opendaylight.infrautils</groupId>
271       <artifactId>caches-standard-impl</artifactId>
272     </dependency>
273     <dependency>
274       <groupId>org.opendaylight.yangtools</groupId>
275       <artifactId>util</artifactId>
276     </dependency>
277
278     <!-- Logging related -->
279     <dependency>
280       <groupId>org.slf4j</groupId>
281       <artifactId>slf4j-api</artifactId>
282       <!-- Must override odlparent's <scope>provided so that it gets bundled -->
283       <scope>compile</scope>
284     </dependency>
285     <dependency>
286       <groupId>org.slf4j</groupId>
287       <artifactId>slf4j-simple</artifactId>
288     </dependency>
289     <dependency>
290       <groupId>org.apache.logging.log4j</groupId>
291       <artifactId>log4j-slf4j-impl</artifactId>
292     </dependency>
293
294     <!--infrautils-->
295     <dependency>
296       <groupId>org.opendaylight.odlguice</groupId>
297       <artifactId>inject.guice</artifactId>
298     </dependency>
299
300     <!--infrautils-->
301     <dependency>
302       <groupId>org.opendaylight.odlguice</groupId>
303       <artifactId>inject.guice.testutils</artifactId>
304     </dependency>
305
306     <!--infrautils-->
307     <dependency>
308       <groupId>com.google.inject.extensions</groupId>
309       <artifactId>guice-multibindings</artifactId>
310       <!-- TODO remove when we bumped to Guice 4.2.0,
311            because there this is already included according to https://github.com/google/guice/wiki/Guice42;
312            and if we never bump, then move this dependency into the (TBD) infrautils:inject.guice instead  -->
313       <version>4.1.0</version>
314     </dependency>
315
316     <!-- Now <scope>test... -->
317     <dependency>
318       <groupId>org.opendaylight.aaa.web</groupId>
319       <artifactId>testutils</artifactId>
320       <version>0.9.0</version>
321       <scope>test</scope>
322     </dependency>
323     <dependency>
324       <groupId>org.opendaylight.infrautils</groupId>
325       <artifactId>infrautils-testutils</artifactId>
326       <scope>test</scope>
327     </dependency>
328     <!--dependency>
329       <groupId>org.opendaylight.infrautils</groupId>
330       <artifactId>inject.guice.testutils</artifactId>
331       <scope>compile</scope-->
332       <!-- TODO <scope>test</scope> instead of compile here once I'll create
333            a new infrautils:inject.guice.testutils (non-testutils) for the run-time part.. -->
334     <!--/dependency-->
335     <!--  TODO remove, this is just a temporary hack, see above -->
336     <dependency>
337       <groupId>junit</groupId>
338       <artifactId>junit</artifactId>
339       <scope>compile</scope>
340     </dependency>
341     <!--  TODO remove when https://git.opendaylight.org/gerrit/#/c/67763/ is merged and odlparent bumped -->
342     <dependency>
343       <groupId>org.opendaylight.odlguice</groupId>
344       <artifactId>inject.guice.extensions.jsr250</artifactId>
345       <scope>compile</scope>
346     </dependency>
347
348     <!--controller-->
349     <dependency>
350       <groupId>org.opendaylight.controller</groupId>
351       <artifactId>blueprint</artifactId>
352       <version>0.10.0</version>
353       <scope>compile</scope>
354     </dependency>
355
356   </dependencies>
357
358   <build>
359     <plugins>
360       <plugin>
361         <artifactId>maven-assembly-plugin</artifactId>
362         <!-- TODO upstream version into odlparent pluginManagement -->
363         <version>3.1.1</version>
364         <configuration>
365           <descriptors>
366             <descriptor>src/assembly/micro.xml</descriptor>
367           </descriptors>
368           <tarLongFileMode>gnu</tarLongFileMode>
369         </configuration>
370         <executions>
371           <execution>
372             <id>make-assembly</id>
373             <phase>package</phase>
374             <goals>
375               <goal>single</goal>
376             </goals>
377           </execution>
378         </executions>
379       </plugin>
380       <plugin>
381         <artifactId>maven-jar-plugin</artifactId>
382         <configuration>
383           <archive>
384             <manifest>
385               <addClasspath>true</addClasspath>
386               <classpathPrefix>lib/</classpathPrefix>
387               <!-- <classpathLayoutType>repository</classpathLayoutType> -->
388               <classpathLayoutType>custom</classpathLayoutType>
389               <!-- This must match the outputFileNameMapping in the micro.xml assembly descriptor -->
390               <customClasspathLayout>$${artifact.groupId}.$${artifact.artifactId}-$${artifact.version}$${dashClassifier?}.$${artifact.extension}</customClasspathLayout>
391             </manifest>
392           </archive>
393         </configuration>
394       </plugin>
395     </plugins>
396   </build>
397 </project>