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