c0cb28e68a7ab0c657601355d364ba37fc7687f0
[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>5.4.0.Final</drools.version>
34     </properties>
35
36     <dependencies>
37
38         <dependency>
39             <groupId>com.fasterxml.jackson.core</groupId>
40             <artifactId>jackson-databind</artifactId>
41             <version>2.6.2</version>
42         </dependency>
43         <dependency>
44             <groupId>net.sf.json-lib</groupId>
45             <artifactId>json-lib</artifactId>
46             <version>2.4</version>
47             <classifier>jdk15</classifier>
48         </dependency>
49
50         <dependency>
51             <groupId>org.onap.msb.java-sdk</groupId>
52             <artifactId>msb-java-sdk</artifactId>
53         </dependency>
54         <dependency>
55             <groupId>org.reflections</groupId>
56             <artifactId>reflections</artifactId>
57         </dependency>
58         <dependency>
59             <groupId>org.onap.holmes.dsa</groupId>
60             <artifactId>dmaap-dsa</artifactId>
61             <exclusions>
62                 <exclusion>
63                     <groupId>org.apache.httpcomponents</groupId>
64                     <artifactId>httpclient</artifactId>
65                 </exclusion>
66                 <exclusion>
67                     <groupId>org.onap.holmes.common</groupId>
68                     <artifactId>holmes-actions</artifactId>
69                 </exclusion>
70             </exclusions>
71         </dependency>
72         <dependency>
73             <groupId>org.onap.holmes.common</groupId>
74             <artifactId>holmes-actions</artifactId>
75             <exclusions>
76                 <exclusion>
77                     <groupId>org.glassfish.jersey.containers</groupId>
78                     <artifactId>jersey-container-servlet-core</artifactId>
79                 </exclusion>
80             </exclusions>
81         </dependency>
82         <dependency>
83             <groupId>org.glassfish.jersey.containers</groupId>
84             <artifactId>jersey-container-servlet-core</artifactId>
85             <version>2.22.2</version>
86         </dependency>
87         <dependency>
88             <groupId>org.easymock</groupId>
89             <artifactId>easymock</artifactId>
90         </dependency>
91         <dependency>
92             <groupId>org.drools</groupId>
93             <artifactId>drools-core</artifactId>
94             <version>${drools.version}</version>
95         </dependency>
96         <dependency>
97             <groupId>org.drools</groupId>
98             <artifactId>drools-compiler</artifactId>
99             <version>${drools.version}</version>
100             <exclusions>
101                 <exclusion>
102                     <groupId>org.eclipse.jdt.core.compiler</groupId>
103                     <artifactId>ecj</artifactId>
104                 </exclusion>
105             </exclusions>
106         </dependency>
107         <dependency>
108             <groupId>org.eclipse.jdt.core.compiler</groupId>
109             <artifactId>ecj</artifactId>
110             <version>4.5.1</version>
111         </dependency>
112         <dependency>
113             <groupId>org.drools</groupId>
114             <artifactId>drools-templates</artifactId>
115             <version>${drools.version}</version>
116         </dependency>
117         <dependency>
118             <groupId>io.dropwizard</groupId>
119             <artifactId>dropwizard-db</artifactId>
120         </dependency>
121         <dependency>
122             <groupId>org.antlr</groupId>
123             <artifactId>stringtemplate</artifactId>
124         </dependency>
125         <dependency>
126             <groupId>io.dropwizard</groupId>
127             <artifactId>dropwizard-core</artifactId>
128             <exclusions>
129                 <exclusion>
130                     <groupId>ch.qos.logback</groupId>
131                     <artifactId>logback</artifactId>
132                 </exclusion>
133                 <exclusion>
134                     <artifactId>log4j-over-slf4j</artifactId>
135                     <groupId>org.slf4j</groupId>
136                 </exclusion>
137             </exclusions>
138         </dependency>
139         <dependency>
140             <groupId>org.projectlombok</groupId>
141             <artifactId>lombok</artifactId>
142         </dependency>
143         <dependency>
144             <groupId>org.postgresql</groupId>
145             <artifactId>postgresql</artifactId>
146         </dependency>
147         <dependency>
148             <groupId>org.quartz-scheduler</groupId>
149             <artifactId>quartz</artifactId>
150         </dependency>
151         <dependency>
152             <groupId>junit</groupId>
153             <artifactId>junit</artifactId>
154         </dependency>
155         <dependency>
156             <groupId>org.hamcrest</groupId>
157             <artifactId>hamcrest-core</artifactId>
158         </dependency>
159         <dependency>
160             <groupId>org.powermock</groupId>
161             <artifactId>powermock-module-junit4</artifactId>
162         </dependency>
163         <dependency>
164             <groupId>org.slf4j</groupId>
165             <artifactId>slf4j-api</artifactId>
166         </dependency>
167         <dependency>
168             <groupId>io.swagger</groupId>
169             <artifactId>swagger-jersey2-jaxrs</artifactId>
170             <scope>provided</scope>
171         </dependency>
172
173         <dependency>
174             <groupId>org.powermock</groupId>
175             <artifactId>powermock-api-easymock</artifactId>
176             <version>1.6.5</version>
177             <scope>test</scope>
178         </dependency>
179         <dependency>
180             <groupId>org.powermock</groupId>
181             <artifactId>powermock-module-junit4-rule</artifactId>
182             <version>1.6.5</version>
183             <scope>test</scope>
184         </dependency>
185         <dependency>
186             <groupId>org.powermock</groupId>
187             <artifactId>powermock-classloading-xstream</artifactId>
188             <version>1.6.5</version>
189             <scope>test</scope>
190         </dependency>
191         <dependency>
192             <groupId>org.apache.httpcomponents</groupId>
193             <artifactId>httpclient</artifactId>
194         </dependency>
195         <dependency>
196             <groupId>com.google.guava</groupId>
197             <artifactId>guava</artifactId>
198         </dependency>
199     </dependencies>
200
201     <build>
202         <plugins>
203             <plugin>
204                 <groupId>org.apache.maven.plugins</groupId>
205                 <artifactId>maven-jar-plugin</artifactId>
206                 <configuration>
207                     <archive>
208                         <manifest>
209                             <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
210                         </manifest>
211                     </archive>
212                 </configuration>
213             </plugin>
214             <plugin>
215                 <groupId>org.apache.maven.plugins</groupId>
216                 <artifactId>maven-shade-plugin</artifactId>
217                 <configuration>
218                     <createDependencyReducedPom>true</createDependencyReducedPom>
219                     <filters>
220                         <filter>
221                             <artifact>*:*</artifact>
222                             <excludes>
223                                 <exclude>META-INF/*.SF</exclude>
224                                 <exclude>META-INF/*.DSA</exclude>
225                                 <exclude>META-INF/*.RSA</exclude>
226                             </excludes>
227                         </filter>
228                         <filter>
229                             <artifact>org.onap.holmes.dsa:dmaap-dsa</artifact>
230                             <excludes>
231                                 <exclude>org/onap/holmes/common/**</exclude>
232                             </excludes>
233                         </filter>
234                     </filters>
235                 </configuration>
236                 <executions>
237                     <execution>
238                         <phase>package</phase>
239                         <goals>
240                             <goal>shade</goal>
241                         </goals>
242                         <configuration>
243                             <transformers>
244                                 <transformer
245                                     implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/>
246                                 <transformer
247                                     implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
248                                     <mainClass>org.onap.holmes.engine.EngineDActiveApp
249                                     </mainClass>
250                                 </transformer>
251                             </transformers>
252                         </configuration>
253                     </execution>
254                 </executions>
255             </plugin>
256         </plugins>
257         <resources>
258             <resource>
259                 <directory>src/main/java</directory>
260                 <includes>
261                     <include>**/*.properties</include>
262                 </includes>
263             </resource>
264             <resource>
265                 <directory>src/main/resources</directory>
266             </resource>
267         </resources>
268     </build>
269
270     <profiles>
271         <profile>
272             <id>swagger</id>
273             <dependencies>
274                 <dependency>
275                     <groupId>io.swagger</groupId>
276                     <artifactId>swagger-jersey2-jaxrs</artifactId>
277                     <version>1.5.0</version>
278                 </dependency>
279             </dependencies>
280
281             <build>
282                 <plugins>
283                     <plugin>
284                         <groupId>com.github.kongchen</groupId>
285                         <artifactId>swagger-maven-plugin</artifactId>
286                         <version>3.1.1</version>
287                         <configuration>
288                             <apiSources>
289                                 <apiSource>
290                                     <springmvc>false</springmvc>
291                                     <locations>org.onap.holmes.engine.resources</locations>
292                                     <basePath>/api/holmes-engine-mgmt/v1/</basePath>
293                                     <info>
294                                         <title>API Descriptions for Holmes Engine Management</title>
295                                         <version>v1</version>
296                                         <description>
297                                             This page shows all the APIs available in the Holmes engine management module.
298                                         </description>
299                                         <termsOfService>
300                                             http://www.github.com/kongchen/swagger-maven-plugin
301                                         </termsOfService>
302                                         <contact>
303                                             <email>fu.guangrong@zte.com.cn</email>
304                                             <name>Guangrong Fu</name>
305                                         </contact>
306                                         <license>
307                                             <url>http://www.apache.org/licenses/LICENSE-2.0.html</url>
308                                             <name>Apache 2.0</name>
309                                         </license>
310                                     </info>
311                                     <securityDefinitions>
312                                     </securityDefinitions>
313                                     <swaggerDirectory>${basedir}/src/main/resources</swaggerDirectory>
314                                 </apiSource>
315                             </apiSources>
316                         </configuration>
317                         <executions>
318                             <execution>
319                                 <phase>compile</phase>
320                                 <goals>
321                                     <goal>generate</goal>
322                                 </goals>
323                             </execution>
324                         </executions>
325                         <dependencies>
326                             <dependency>
327                                 <groupId>io.swagger</groupId>
328                                 <artifactId>swagger-hibernate-validations</artifactId>
329                                 <version>1.5.6</version>
330                             </dependency>
331                         </dependencies>
332                     </plugin>
333                 </plugins>
334             </build>
335         </profile>
336     </profiles>
337 </project>