55dfe5bc8eccf0f1eb1493666cdd6be908253b2f
[holmes/engine-management.git] / engine-d / pom.xml
1 <?xml version="1.0" encoding="UTF-8" ?>
2 <!--
3   ~ Copyright 2017 ZTE Corporation.
4   ~
5   ~ Licensed under the Apache License, Version 2.0 (the "License");
6   ~ you may not use this file except in compliance with the License.
7   ~ You may obtain a copy of the License at
8   ~
9   ~     http://www.apache.org/licenses/LICENSE-2.0
10   ~
11   ~ Unless required by applicable law or agreed to in writing, software
12   ~ distributed under the License is distributed on an "AS IS" BASIS,
13   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14   ~ See the License for the specific language governing permissions and
15   ~ limitations under the License.
16   -->
17 <project xmlns="http://maven.apache.org/POM/4.0.0"
18     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
19     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
20
21     <modelVersion>4.0.0</modelVersion>
22     <parent>
23         <groupId>org.onap.holmes.engine-management</groupId>
24         <artifactId>holmes-engine-parent</artifactId>
25         <version>1.1.0-SNAPSHOT</version>
26     </parent>
27
28     <artifactId>holmes-engine-d</artifactId>
29     <name>holmes-engine-d-service</name>
30     <packaging>jar</packaging>
31
32     <properties>
33         <drools.version>6.5.0.Final</drools.version>
34     </properties>
35
36     <dependencies>
37         <dependency>
38             <groupId>ch.qos.logback</groupId>
39             <artifactId>logback-classic</artifactId>
40             <version>1.1.2</version>
41         </dependency>
42         <dependency>
43             <groupId>org.hibernate</groupId>
44             <artifactId>hibernate-validator</artifactId>
45             <version>5.4.2.Final</version>
46         </dependency>
47         <dependency>
48             <groupId>com.fasterxml.jackson.core</groupId>
49             <artifactId>jackson-core</artifactId>
50             <version>2.8.6</version>
51         </dependency>
52         <dependency>
53             <groupId>net.sf.json-lib</groupId>
54             <artifactId>json-lib</artifactId>
55             <version>2.4</version>
56             <classifier>jdk15</classifier>
57             <exclusions>
58                 <exclusion>
59                     <groupId>commons-collections</groupId>
60                     <artifactId>commons-collections</artifactId>
61                 </exclusion>
62                 <exclusion>
63                     <groupId>commons-beanutils</groupId>
64                     <artifactId>commons-beanutils</artifactId>
65                 </exclusion>
66             </exclusions>
67         </dependency>
68         <dependency>
69             <groupId>commons-collections</groupId>
70             <artifactId>commons-collections</artifactId>
71             <version>3.2.2</version>
72         </dependency>
73         <dependency>
74             <groupId>org.onap.msb.java-sdk</groupId>
75             <artifactId>msb-java-sdk</artifactId>
76             <exclusions>
77                 <exclusion>
78                     <groupId>ch.qos.logback</groupId>
79                     <artifactId>logback-classic</artifactId>
80                 </exclusion>
81                 <exclusion>
82                     <groupId>com.fasterxml.jackson.core</groupId>
83                     <artifactId>jackson-databind</artifactId>
84                 </exclusion>
85                 <exclusion>
86                     <groupId>com.fasterxml.jackson.core</groupId>
87                     <artifactId>jackson-core</artifactId>
88                 </exclusion>
89             </exclusions>
90         </dependency>
91         <dependency>
92             <groupId>org.reflections</groupId>
93             <artifactId>reflections</artifactId>
94         </dependency>
95         <dependency>
96             <groupId>org.onap.holmes.dsa</groupId>
97             <artifactId>dmaap-dsa</artifactId>
98             <exclusions>
99                 <exclusion>
100                     <groupId>org.apache.httpcomponents</groupId>
101                     <artifactId>httpclient</artifactId>
102                 </exclusion>
103                 <exclusion>
104                     <groupId>org.onap.holmes.common</groupId>
105                     <artifactId>holmes-actions</artifactId>
106                 </exclusion>
107                 <exclusion>
108                     <groupId>org.onap.msb.java-sdk</groupId>
109                     <artifactId>msb-java-sdk</artifactId>
110                 </exclusion>
111             </exclusions>
112         </dependency>
113         <dependency>
114             <groupId>org.onap.holmes.common</groupId>
115             <artifactId>holmes-actions</artifactId>
116             <exclusions>
117                 <exclusion>
118                     <groupId>io.dropwizard</groupId>
119                     <artifactId>dropwizard-db</artifactId>
120                 </exclusion>
121                 <exclusion>
122                     <groupId>io.dropwizard</groupId>
123                     <artifactId>dropwizard-core</artifactId>
124                 </exclusion>
125                 <exclusion>
126                     <groupId>org.glassfish.jersey.containers</groupId>
127                     <artifactId>jersey-container-servlet-core</artifactId>
128                 </exclusion>
129                 <exclusion>
130                     <groupId>io.swagger</groupId>
131                     <artifactId>swagger-jersey2-jaxrs</artifactId>
132                 </exclusion>
133             </exclusions>
134         </dependency>
135         <dependency>
136             <groupId>org.glassfish.jersey.containers</groupId>
137             <artifactId>jersey-container-servlet-core</artifactId>
138             <version>2.22.2</version>
139         </dependency>
140         <dependency>
141             <groupId>org.easymock</groupId>
142             <artifactId>easymock</artifactId>
143         </dependency>
144         <dependency>
145             <groupId>org.drools</groupId>
146             <artifactId>drools-core</artifactId>
147             <version>${drools.version}</version>
148         </dependency>
149         <dependency>
150             <groupId>org.drools</groupId>
151             <artifactId>drools-compiler</artifactId>
152             <version>${drools.version}</version>
153             <exclusions>
154                 <exclusion>
155                     <groupId>org.eclipse.jdt.core.compiler</groupId>
156                     <artifactId>ecj</artifactId>
157                 </exclusion>
158             </exclusions>
159         </dependency>
160         <dependency>
161             <groupId>org.eclipse.jdt.core.compiler</groupId>
162             <artifactId>ecj</artifactId>
163             <version>4.5.1</version>
164         </dependency>
165         <dependency>
166             <groupId>org.drools</groupId>
167             <artifactId>drools-templates</artifactId>
168             <version>${drools.version}</version>
169         </dependency>
170         <dependency>
171             <groupId>io.dropwizard</groupId>
172             <artifactId>dropwizard-db</artifactId>
173         </dependency>
174         <dependency>
175             <groupId>org.antlr</groupId>
176             <artifactId>stringtemplate</artifactId>
177         </dependency>
178         <dependency>
179             <groupId>io.dropwizard</groupId>
180             <artifactId>dropwizard-core</artifactId>
181             <exclusions>
182                 <exclusion>
183                     <groupId>ch.qos.logback</groupId>
184                     <artifactId>logback</artifactId>
185                 </exclusion>
186                 <exclusion>
187                     <groupId>ch.qos.logback</groupId>
188                     <artifactId>logback-classic</artifactId>
189                 </exclusion>
190                 <exclusion>
191                     <artifactId>log4j-over-slf4j</artifactId>
192                     <groupId>org.slf4j</groupId>
193                 </exclusion>
194                 <exclusion>
195                     <groupId>org.hibernate</groupId>
196                     <artifactId>hibernate-validator</artifactId>
197                 </exclusion>
198                 <exclusion>
199                     <groupId>com.fasterxml.jackson.core</groupId>
200                     <artifactId>jackson-core</artifactId>
201                 </exclusion>
202             </exclusions>
203         </dependency>
204         <dependency>
205             <groupId>org.projectlombok</groupId>
206             <artifactId>lombok</artifactId>
207         </dependency>
208         <dependency>
209             <groupId>org.postgresql</groupId>
210             <artifactId>postgresql</artifactId>
211         </dependency>
212         <dependency>
213             <groupId>org.quartz-scheduler</groupId>
214             <artifactId>quartz</artifactId>
215         </dependency>
216         <dependency>
217             <groupId>junit</groupId>
218             <artifactId>junit</artifactId>
219         </dependency>
220         <dependency>
221             <groupId>org.hamcrest</groupId>
222             <artifactId>hamcrest-core</artifactId>
223         </dependency>
224         <dependency>
225             <groupId>org.powermock</groupId>
226             <artifactId>powermock-module-junit4</artifactId>
227         </dependency>
228         <dependency>
229             <groupId>org.powermock</groupId>
230             <artifactId>powermock-api-mockito</artifactId>
231         </dependency>
232         <dependency>
233             <groupId>org.slf4j</groupId>
234             <artifactId>slf4j-api</artifactId>
235         </dependency>
236         <dependency>
237             <groupId>io.swagger</groupId>
238             <artifactId>swagger-jersey2-jaxrs</artifactId>
239             <scope>provided</scope>
240             <exclusions>
241                 <exclusion>
242                     <groupId>com.fasterxml.jackson.core</groupId>
243                     <artifactId>jackson-core</artifactId>
244                 </exclusion>
245                 <exclusion>
246                     <groupId>com.fasterxml.jackson.core</groupId>
247                     <artifactId>jackson-databind</artifactId>
248                 </exclusion>
249             </exclusions>
250         </dependency>
251         <dependency>
252             <groupId>org.powermock</groupId>
253             <artifactId>powermock-api-easymock</artifactId>
254             <version>1.6.5</version>
255             <scope>test</scope>
256         </dependency>
257         <dependency>
258             <groupId>org.powermock</groupId>
259             <artifactId>powermock-module-junit4-rule</artifactId>
260             <version>1.6.5</version>
261             <scope>test</scope>
262         </dependency>
263         <dependency>
264             <groupId>org.powermock</groupId>
265             <artifactId>powermock-classloading-xstream</artifactId>
266             <version>1.6.5</version>
267             <scope>test</scope>
268             <exclusions>
269                 <exclusion>
270                     <groupId>com.thoughtworks.xstream</groupId>
271                     <artifactId>xstream</artifactId>
272                 </exclusion>
273             </exclusions>
274         </dependency>
275         <dependency>
276             <groupId>com.thoughtworks.xstream</groupId>
277             <artifactId>xstream</artifactId>
278             <version>1.4.10</version>
279         </dependency>
280         <dependency>
281             <groupId>org.apache.httpcomponents</groupId>
282             <artifactId>httpclient</artifactId>
283         </dependency>
284         <dependency>
285             <groupId>com.google.guava</groupId>
286             <artifactId>guava</artifactId>
287         </dependency>
288     </dependencies>
289
290     <build>
291         <plugins>
292             <plugin>
293                 <groupId>org.apache.maven.plugins</groupId>
294                 <artifactId>maven-jar-plugin</artifactId>
295                 <configuration>
296                     <archive>
297                         <manifest>
298                             <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
299                         </manifest>
300                     </archive>
301                 </configuration>
302             </plugin>
303             <plugin>
304                 <groupId>org.apache.maven.plugins</groupId>
305                 <artifactId>maven-shade-plugin</artifactId>
306                 <configuration>
307                     <createDependencyReducedPom>true</createDependencyReducedPom>
308                     <filters>
309                         <filter>
310                             <artifact>*:*</artifact>
311                             <excludes>
312                                 <exclude>META-INF/*.SF</exclude>
313                                 <exclude>META-INF/*.DSA</exclude>
314                                 <exclude>META-INF/*.RSA</exclude>
315                             </excludes>
316                         </filter>
317                         <filter>
318                             <artifact>org.onap.holmes.dsa:dmaap-dsa</artifact>
319                             <excludes>
320                                 <exclude>org/onap/holmes/common/**</exclude>
321                                 <exclude>com/fasterxml/jackson/core/jackson-databind/**</exclude>
322                             </excludes>
323                         </filter>
324                     </filters>
325                 </configuration>
326                 <executions>
327                     <execution>
328                         <phase>package</phase>
329                         <goals>
330                             <goal>shade</goal>
331                         </goals>
332                         <configuration>
333                             <transformers>
334                                 <transformer
335                                     implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/>
336                                 <transformer
337                                     implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
338                                     <mainClass>org.onap.holmes.engine.EngineDActiveApp
339                                     </mainClass>
340                                 </transformer>
341                             </transformers>
342                         </configuration>
343                     </execution>
344                 </executions>
345             </plugin>
346         </plugins>
347         <resources>
348             <resource>
349                 <directory>src/main/java</directory>
350                 <includes>
351                     <include>**/*.properties</include>
352                 </includes>
353             </resource>
354             <resource>
355                 <directory>src/main/resources</directory>
356             </resource>
357         </resources>
358     </build>
359
360     <profiles>
361         <profile>
362             <id>swagger</id>
363             <dependencies>
364                 <dependency>
365                     <groupId>io.swagger</groupId>
366                     <artifactId>swagger-jersey2-jaxrs</artifactId>
367                     <version>1.5.0</version>
368                 </dependency>
369             </dependencies>
370
371             <build>
372                 <plugins>
373                     <plugin>
374                         <groupId>com.github.kongchen</groupId>
375                         <artifactId>swagger-maven-plugin</artifactId>
376                         <version>3.1.1</version>
377                         <configuration>
378                             <apiSources>
379                                 <apiSource>
380                                     <springmvc>false</springmvc>
381                                     <locations>org.onap.holmes.engine.resources</locations>
382                                     <basePath>/api/holmes-engine-mgmt/v1/</basePath>
383                                     <info>
384                                         <title>API Descriptions for Holmes Engine Management</title>
385                                         <version>v1</version>
386                                         <description>
387                                             This page shows all the APIs available in the Holmes engine management module.
388                                         </description>
389                                         <termsOfService>
390                                             http://www.github.com/kongchen/swagger-maven-plugin
391                                         </termsOfService>
392                                         <contact>
393                                             <email>fu.guangrong@zte.com.cn</email>
394                                             <name>Guangrong Fu</name>
395                                         </contact>
396                                         <license>
397                                             <url>http://www.apache.org/licenses/LICENSE-2.0.html</url>
398                                             <name>Apache 2.0</name>
399                                         </license>
400                                     </info>
401                                     <securityDefinitions>
402                                     </securityDefinitions>
403                                     <swaggerDirectory>${basedir}/src/main/resources</swaggerDirectory>
404                                 </apiSource>
405                             </apiSources>
406                         </configuration>
407                         <executions>
408                             <execution>
409                                 <phase>compile</phase>
410                                 <goals>
411                                     <goal>generate</goal>
412                                 </goals>
413                             </execution>
414                         </executions>
415                         <dependencies>
416                             <dependency>
417                                 <groupId>io.swagger</groupId>
418                                 <artifactId>swagger-hibernate-validations</artifactId>
419                                 <version>1.5.6</version>
420                             </dependency>
421                         </dependencies>
422                     </plugin>
423                 </plugins>
424             </build>
425         </profile>
426     </profiles>
427 </project>