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