Fix the Sonar Findings
[holmes/rule-management.git] / rulemgt / 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" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
18     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
19
20     <modelVersion>4.0.0</modelVersion>
21     <parent>
22         <groupId>org.onap.holmes.rule-management</groupId>
23         <artifactId>holmes-rulemgt-parent</artifactId>
24         <version>1.1.0-SNAPSHOT</version>
25     </parent>
26
27     <artifactId>holmes-rulemgt</artifactId>
28     <name>holmes-rulemgt-service</name>
29     <packaging>jar</packaging>
30
31     <dependencies>
32         <dependency>
33             <groupId>com.fasterxml.jackson.core</groupId>
34             <artifactId>jackson-databind</artifactId>
35             <version>2.8.9</version>
36         </dependency>
37         <dependency>
38             <groupId>org.onap.msb.java-sdk</groupId>
39             <artifactId>msb-java-sdk</artifactId>
40             <exclusions>
41               <exclusion>
42                 <groupId>ch.qos.logback</groupId>
43                 <artifactId>logback-classic</artifactId>
44               </exclusion>
45               <exclusion>
46                 <groupId>com.fasterxml.jackson.core</groupId>
47                 <artifactId>jackson-databind</artifactId>
48               </exclusion>
49               <exclusion>
50                 <groupId>com.fasterxml.jackson.core</groupId>
51                 <artifactId>jackson-core</artifactId>
52               </exclusion>
53             </exclusions>
54         </dependency>
55         <dependency>
56             <groupId>org.reflections</groupId>
57             <artifactId>reflections</artifactId>
58         </dependency>
59         <dependency>
60             <groupId>org.onap.holmes.common</groupId>
61             <artifactId>holmes-actions</artifactId>
62             <exclusions>
63                 <exclusion>
64                     <groupId>org.glassfish.jersey.containers</groupId>
65                     <artifactId>jersey-container-servlet-core</artifactId>
66                 </exclusion>
67                 <exclusion>
68                     <groupId>org.apache.activemq</groupId>
69                     <artifactId>activemq-core</artifactId>
70                 </exclusion>
71             </exclusions>
72         </dependency>
73         <dependency>
74             <groupId>org.easymock</groupId>
75             <artifactId>easymock</artifactId>
76         </dependency>
77         <dependency>
78             <groupId>io.dropwizard</groupId>
79             <artifactId>dropwizard-db</artifactId>
80         </dependency>
81         <dependency>
82             <groupId>org.antlr</groupId>
83             <artifactId>stringtemplate</artifactId>
84         </dependency>
85         <dependency>
86             <groupId>io.dropwizard</groupId>
87             <artifactId>dropwizard-core</artifactId>
88             <exclusions>
89                 <exclusion>
90                     <groupId>ch.qos.logback</groupId>
91                     <artifactId>logback</artifactId>
92                 </exclusion>
93                 <exclusion>
94                     <groupId>ch.qos.logback</groupId>
95                     <artifactId>logback-classic</artifactId>
96                 </exclusion>
97                 <exclusion>
98                     <artifactId>log4j-over-slf4j</artifactId>
99                     <groupId>org.slf4j</groupId>
100                 </exclusion>
101               <exclusion>
102                 <groupId>com.fasterxml.jackson.core</groupId>
103                 <artifactId>jackson-databind</artifactId>
104               </exclusion>
105               <exclusion>
106                 <groupId>com.fasterxml.jackson.core</groupId>
107                 <artifactId>jackson-core</artifactId>
108               </exclusion>
109             </exclusions>
110         </dependency>
111       <dependency>
112             <groupId>ch.qos.logback</groupId>
113             <artifactId>logback-classic</artifactId>
114             <version>1.2.3</version>
115       </dependency>
116       <dependency>
117             <groupId>org.projectlombok</groupId>
118             <artifactId>lombok</artifactId>
119         </dependency>
120         <dependency>
121             <groupId>org.postgresql</groupId>
122             <artifactId>postgresql</artifactId>
123         </dependency>
124         <dependency>
125             <groupId>org.quartz-scheduler</groupId>
126             <artifactId>quartz</artifactId>
127         </dependency>
128         <dependency>
129             <groupId>junit</groupId>
130             <artifactId>junit</artifactId>
131         </dependency>
132         <dependency>
133             <groupId>org.hamcrest</groupId>
134             <artifactId>hamcrest-core</artifactId>
135         </dependency>
136         <dependency>
137             <groupId>org.powermock</groupId>
138             <artifactId>powermock-module-junit4</artifactId>
139         </dependency>
140         <dependency>
141             <groupId>org.slf4j</groupId>
142             <artifactId>slf4j-api</artifactId>
143         </dependency>
144         <dependency>
145             <groupId>io.swagger</groupId>
146             <artifactId>swagger-jersey2-jaxrs</artifactId>
147             <exclusions>
148               <exclusion>
149                 <groupId>com.fasterxml.jackson.core</groupId>
150                 <artifactId>jackson-databind</artifactId>
151               </exclusion>
152               <exclusion>
153                 <groupId>com.fasterxml.jackson.core</groupId>
154                 <artifactId>jackson-core</artifactId>
155               </exclusion>
156             </exclusions>
157             <scope>provided</scope>
158         </dependency>
159
160         <dependency>
161             <groupId>org.powermock</groupId>
162             <artifactId>powermock-api-easymock</artifactId>
163             <version>1.6.5</version>
164             <scope>test</scope>
165         </dependency>
166         <dependency>
167             <groupId>org.powermock</groupId>
168             <artifactId>powermock-api-mockito</artifactId>
169             <version>1.7.1</version>
170             <scope>test</scope>
171         </dependency>
172         <dependency>
173             <groupId>org.powermock</groupId>
174             <artifactId>powermock-module-junit4-rule</artifactId>
175             <version>1.6.5</version>
176             <scope>test</scope>
177         </dependency>
178         <dependency>
179             <groupId>org.powermock</groupId>
180             <artifactId>powermock-classloading-xstream</artifactId>
181             <version>1.6.5</version>
182             <scope>test</scope>
183         </dependency>
184         <dependency>
185             <groupId>org.hamcrest</groupId>
186             <artifactId>hamcrest-library</artifactId>
187             <version>1.3</version>
188             <scope>test</scope>
189         </dependency>
190         <dependency>
191             <groupId>org.easymock</groupId>
192             <artifactId>easymock</artifactId>
193             <version>3.0</version>
194             <scope>test</scope>
195         </dependency>
196         <dependency>
197             <groupId>org.javassist</groupId>
198             <artifactId>javassist</artifactId>
199             <version>3.20.0-GA</version>
200         </dependency>
201         <dependency>
202             <groupId>org.apache.httpcomponents</groupId>
203             <artifactId>httpclient</artifactId>
204             <version>4.5.3</version>
205         </dependency>
206         <dependency>
207             <groupId>com.googlecode.json-simple</groupId>
208             <artifactId>json-simple</artifactId>
209             <version>1.1.1</version>
210         </dependency>
211         <dependency>
212             <groupId>net.sf.json-lib</groupId>
213             <artifactId>json-lib</artifactId>
214             <version>2.4</version>
215             <classifier>jdk15</classifier>
216             <exclusions>
217                 <exclusion>
218                     <groupId>commons-collections</groupId>
219                     <artifactId>commons-collections</artifactId>
220                 </exclusion>
221                 <exclusion>
222                     <groupId>commons-beanutils</groupId>
223                     <artifactId>commons-beanutils</artifactId>
224                 </exclusion>
225             </exclusions>
226         </dependency>
227         <dependency>
228             <groupId>commons-collections</groupId>
229             <artifactId>commons-collections</artifactId>
230             <version>3.2.2</version>
231         </dependency>
232       <dependency>
233         <groupId>com.alibaba</groupId>
234         <artifactId>fastjson</artifactId>
235         <version>1.1.23</version>
236       </dependency>
237         <dependency>
238             <groupId>org.glassfish.jersey.core</groupId>
239             <artifactId>jersey-server</artifactId>
240             <version>${jersey.version}</version>
241         </dependency>
242         <dependency>
243             <groupId>org.glassfish.jersey.core</groupId>
244             <artifactId>jersey-client</artifactId>
245             <version>${jersey.version}</version>
246         </dependency>
247         <dependency>
248             <groupId>org.glassfish.jersey.core</groupId>
249             <artifactId>jersey-common</artifactId>
250             <version>${jersey.version}</version>
251         </dependency>
252         <dependency>
253             <groupId>org.glassfish.jersey.containers</groupId>
254             <artifactId>jersey-container-servlet-core</artifactId>
255             <version>${jersey.version}</version>
256         </dependency>
257         <dependency>
258             <groupId>com.google.guava</groupId>
259             <artifactId>guava</artifactId>
260             <version>19.0</version>
261             <exclusions>
262               <exclusion>
263                 <groupId>com.fasterxml.jackson.core</groupId>
264                 <artifactId>jackson-core</artifactId>
265               </exclusion>
266             </exclusions>
267         </dependency>
268     </dependencies>
269     <build>
270         <plugins>
271             <plugin>
272                 <groupId>org.apache.maven.plugins</groupId>
273                 <artifactId>maven-jar-plugin</artifactId>
274                 <configuration>
275                     <archive>
276                         <manifest>
277                             <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
278                         </manifest>
279                     </archive>
280                 </configuration>
281             </plugin>
282             <plugin>
283                 <groupId>org.apache.maven.plugins</groupId>
284                 <artifactId>maven-compiler-plugin</artifactId>
285                 <version>3.3</version>
286                 <configuration>
287                     <source>1.8</source>
288                     <target>1.8</target>
289                 </configuration>
290             </plugin>
291             <plugin>
292                 <groupId>org.apache.maven.plugins</groupId>
293                 <artifactId>maven-shade-plugin</artifactId>
294                 <configuration>
295                     <createDependencyReducedPom>true</createDependencyReducedPom>
296                     <filters>
297                         <filter>
298                             <artifact>*:*</artifact>
299                             <excludes>
300                                 <exclude>META-INF/*.SF</exclude>
301                                 <exclude>META-INF/*.DSA</exclude>
302                                 <exclude>META-INF/*.RSA</exclude>
303                             </excludes>
304                         </filter>
305                     </filters>
306                 </configuration>
307                 <executions>
308                     <execution>
309                         <phase>package</phase>
310                         <goals>
311                             <goal>shade</goal>
312                         </goals>
313                         <configuration>
314                             <transformers>
315                                 <transformer
316                                     implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/>
317                                 <transformer
318                                     implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
319                                     <mainClass>org.onap.holmes.rulemgt.RuleActiveApp</mainClass>
320                                 </transformer>
321                             </transformers>
322                         </configuration>
323                     </execution>
324                 </executions>
325             </plugin>
326         </plugins>
327         <resources>
328             <resource>
329                 <directory>src/main/java</directory>
330                 <includes>
331                     <include>**/*.properties</include>
332                 </includes>
333             </resource>
334             <resource>
335                 <directory>src/main/resources</directory>
336             </resource>
337         </resources>
338     </build>
339
340     <profiles>
341         <profile>
342             <id>swagger</id>
343             <dependencies>
344                 <dependency>
345                     <groupId>io.swagger</groupId>
346                     <artifactId>swagger-jersey2-jaxrs</artifactId>
347                     <version>1.5.3</version>
348                     <exclusions>
349                         <exclusion>
350                           <groupId>com.fasterxml.jackson.core</groupId>
351                           <artifactId>jackson-databind</artifactId>
352                         </exclusion>
353                         <exclusion>
354                           <groupId>com.fasterxml.jackson.core</groupId>
355                           <artifactId>jackson-core</artifactId>
356                         </exclusion>
357                     </exclusions>
358                 </dependency>
359             </dependencies>
360             <build>
361                 <plugins>
362                     <plugin>
363                         <groupId>com.github.kongchen</groupId>
364                         <artifactId>swagger-maven-plugin</artifactId>
365                         <version>3.1.1</version>
366                         <configuration>
367                             <apiSources>
368                                 <apiSource>
369                                     <springmvc>false</springmvc>
370                                     <locations>org.onap.holmes.rulemgt.resources</locations>
371                                     <basePath>/api/holmes-rule-mgmt/v1/</basePath>
372                                     <info>
373                                         <title>API Descriptions for Holmes Rule Management</title>
374                                         <version>v1</version>
375                                         <description>
376                                             This page shows all the APIs available in the Holmes rule management module.
377                                         </description>
378                                         <termsOfService>
379                                             http://www.github.com/kongchen/swagger-maven-plugin
380                                         </termsOfService>
381                                         <contact>
382                                             <email>fu.guangrong@zte.com.cn</email>
383                                             <name>Guangrong Fu</name>
384                                         </contact>
385                                         <license>
386                                             <url>http://www.apache.org/licenses/LICENSE-2.0.html</url>
387                                             <name>Apache 2.0</name>
388                                         </license>
389                                     </info>
390                                     <securityDefinitions>
391                                     </securityDefinitions>
392                                     <swaggerDirectory>${basedir}/src/main/resources</swaggerDirectory>
393                                 </apiSource>
394                             </apiSources>
395                         </configuration>
396                         <executions>
397                             <execution>
398                                 <phase>compile</phase>
399                                 <goals>
400                                     <goal>generate</goal>
401                                 </goals>
402                             </execution>
403                         </executions>
404                         <dependencies>
405                             <dependency>
406                                 <groupId>io.swagger</groupId>
407                                 <artifactId>swagger-hibernate-validations</artifactId>
408                                 <version>1.5.6</version>
409                             </dependency>
410                         </dependencies>
411                     </plugin>
412                 </plugins>
413             </build>
414         </profile>
415     </profiles>
416 </project>