976e21edb7bb2af28dadd0995b9bae4fb1aca145
[cps.git] / cps-ncmp-rest-stub / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3   ============LICENSE_START=======================================================
4   Copyright (C) 2022 Bell Canada
5   ================================================================================
6   Licensed under the Apache License, Version 2.0 (the "License");
7   you may not use this file except in compliance with the License.
8   You may obtain a copy of the License at
9
10         http://www.apache.org/licenses/LICENSE-2.0
11
12   Unless required by applicable law or agreed to in writing, software
13   distributed under the License is distributed on an "AS IS" BASIS,
14   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15   See the License for the specific language governing permissions and
16   limitations under the License.
17
18   SPDX-License-Identifier: Apache-2.0
19   ============LICENSE_END=========================================================
20 -->
21
22 <project xmlns="http://maven.apache.org/POM/4.0.0"
23   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
24   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
25     <modelVersion>4.0.0</modelVersion>
26     <parent>
27         <groupId>org.onap.cps</groupId>
28         <artifactId>cps-parent</artifactId>
29         <version>3.1.0-SNAPSHOT</version>
30         <relativePath>../cps-parent/pom.xml</relativePath>
31     </parent>
32
33     <artifactId>cps-ncmp-rest-stub</artifactId>
34     <properties>
35         <app>org.onap.cps.ncmp.rest.stub.Application</app>
36         <java.version>11</java.version>
37         <jacoco.reportDirectory.aggregate>${project.reporting.outputDirectory}/jacoco-aggregate</jacoco.reportDirectory.aggregate>
38         <sonar.coverage.jacoco.xmlReportPaths>
39             ../jacoco-report/target/site/jacoco-aggregate/jacoco.xml
40         </sonar.coverage.jacoco.xmlReportPaths>
41         <groovy.version>3.0.8</groovy.version>
42         <nexusproxy>https://nexus.onap.org</nexusproxy>
43         <releaseNexusPath>/content/repositories/releases/</releaseNexusPath>
44         <snapshotNexusPath>/content/repositories/snapshots/</snapshotNexusPath>
45         <sonar.skip>true</sonar.skip>
46         <mapstruct.version>1.4.2.Final</mapstruct.version>
47     </properties>
48
49     <dependencies>
50         <dependency>
51             <groupId>io.swagger.core.v3</groupId>
52             <artifactId>swagger-annotations</artifactId>
53             <version>2.1.4</version>
54         </dependency>
55         <dependency>
56             <groupId>org.springframework.boot</groupId>
57             <artifactId>spring-boot-starter-web</artifactId>
58             <exclusions>
59                 <exclusion>
60                     <groupId>org.springframework.boot</groupId>
61                     <artifactId>spring-boot-starter-tomcat</artifactId>
62                 </exclusion>
63             </exclusions>
64         </dependency>
65         <dependency>
66             <groupId>org.springframework.boot</groupId>
67             <artifactId>spring-boot-starter-validation</artifactId>
68         </dependency>
69         <dependency>
70             <groupId>org.springframework.boot</groupId>
71             <artifactId>spring-boot-starter-jetty</artifactId>
72         </dependency>
73         <dependency>
74             <groupId>org.mapstruct</groupId>
75             <artifactId>mapstruct</artifactId>
76             <version>${mapstruct.version}</version>
77         </dependency>
78         <dependency>
79             <groupId>org.mapstruct</groupId>
80             <artifactId>mapstruct-processor</artifactId>
81             <version>${mapstruct.version}</version>
82         </dependency>
83         <!-- T E S T   D E P E N D E N C I E S -->
84         <dependency>
85             <groupId>org.projectlombok</groupId>
86             <artifactId>lombok</artifactId>
87         </dependency>
88         <dependency>
89             <!-- The SpotBugs Maven plugin uses SLF4J 1.8 beta 2 -->
90             <groupId>org.slf4j</groupId>
91             <artifactId>slf4j-simple</artifactId>
92             <version>1.8.0-beta4</version>
93         </dependency>
94         <dependency>
95             <groupId>com.google.guava</groupId>
96             <artifactId>guava</artifactId>
97             <version>20.0</version>
98         </dependency>
99         <dependency>
100             <groupId>cglib</groupId>
101             <artifactId>cglib-nodep</artifactId>
102             <scope>test</scope>
103             <version>3.1</version>
104         </dependency>
105         <dependency>
106             <groupId>com.google.code.gson</groupId>
107             <artifactId>gson</artifactId>
108         </dependency>
109         <dependency>
110             <groupId>org.onap.cps</groupId>
111             <artifactId>cps-ncmp-rest</artifactId>
112             <exclusions>
113                 <exclusion>
114                     <groupId>org.onap.cps</groupId>
115                     <artifactId>cps-ncmp-service</artifactId>
116                 </exclusion>
117             </exclusions>
118             <optional>true</optional>
119         </dependency>
120     </dependencies>
121
122     <build>
123         <plugins>
124             <!-- Swagger code generation. -->
125             <plugin>
126                 <groupId>org.apache.maven.plugins</groupId>
127                 <artifactId>maven-compiler-plugin</artifactId>
128                 <version>2.3.2</version>
129                 <configuration>
130                     <source>${java.version}</source>
131                     <target>${java.version}</target>
132                 </configuration>
133             </plugin>
134
135             <plugin>
136                 <groupId>org.apache.maven.plugins</groupId>
137                 <artifactId>maven-shade-plugin</artifactId>
138                 <dependencies>
139                     <dependency>
140                         <groupId>org.springframework.boot</groupId>
141                         <artifactId>spring-boot-maven-plugin</artifactId>
142                         <version>1.2.7.RELEASE</version>
143                     </dependency>
144                 </dependencies>
145                 <configuration>
146                     <keepDependenciesWithProvidedScope>true</keepDependenciesWithProvidedScope>
147                     <createDependencyReducedPom>true</createDependencyReducedPom>
148                     <filters>
149                         <filter>
150                             <artifact>*:*</artifact>
151                             <excludes>
152                                 <exclude>org/onap/cps/ncmp/rest/controller/**</exclude>
153                             </excludes>
154                         </filter>
155                     </filters>
156                 </configuration>
157                 <executions>
158                     <execution>
159                         <phase>package</phase>
160                         <goals>
161                             <goal>shade</goal>
162                         </goals>
163                         <configuration>
164                             <transformers>
165                                 <transformer
166                                   implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
167                                     <resource>META-INF/spring.handlers</resource>
168                                 </transformer>
169                                 <transformer
170                                   implementation="org.springframework.boot.maven.PropertiesMergingResourceTransformer">
171                                     <resource>META-INF/spring.factories</resource>
172                                 </transformer>
173                                 <transformer
174                                   implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
175                                     <resource>META-INF/spring.schemas</resource>
176                                 </transformer>
177                                 <transformer
178                                   implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer" />
179                                 <transformer
180                                   implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
181                                     <mainClass>org/onap/cps/ncmp/rest/stub/Application</mainClass>
182                                 </transformer>
183                             </transformers>
184                         </configuration>
185                     </execution>
186                 </executions>
187             </plugin>
188         </plugins>
189     </build>
190 </project>