01f3c3d3c3070e1c5508668bbcc33ac4087ba76e
[dcaegen2/analytics/tca-gen2.git] / dcae-analytics / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3   ~ ================================================================================
4   ~ Copyright (c) 2018-2020 AT&T Intellectual Property. All rights reserved.
5   ~ Copyright (c) 2021 Samsung Electronics. All rights reserved.
6   ~ Copyright (c) 2021 China Mobile Property. All rights reserved.
7   ~ ================================================================================
8   ~ Licensed under the Apache License, Version 2.0 (the "License");
9   ~ you may not use this file except in compliance with the License.
10   ~ You may obtain a copy of the License at
11   ~
12   ~      http://www.apache.org/licenses/LICENSE-2.0
13   ~
14   ~ Unless required by applicable law or agreed to in writing, software
15   ~ distributed under the License is distributed on an "AS IS" BASIS,
16   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17   ~ See the License for the specific language governing permissions and
18   ~ limitations under the License.
19   ~ ============LICENSE_END=========================================================
20   ~
21   -->
22
23 <project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
24     xmlns="http://maven.apache.org/POM/4.0.0"
25     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
26
27     <modelVersion>4.0.0</modelVersion>
28
29     <parent>
30         <groupId>org.onap.dcaegen2.analytics.tca-gen2</groupId>
31         <artifactId>tca-gen2-parent</artifactId>
32         <version>1.3.1-SNAPSHOT</version>
33     </parent>
34
35     <artifactId>dcae-analytics</artifactId>
36     <packaging>pom</packaging>
37
38     <name>DCAE Analytics Parent</name>
39     <description>Parent project for all DCAE Analytics Applications</description>
40
41
42     <modules>
43         <module>dcae-analytics-test</module>
44         <module>dcae-analytics-model</module>
45         <module>dcae-analytics-tca-model</module>
46         <module>dcae-analytics-tca-core</module>
47         <module>dcae-analytics-web</module>
48         <module>dcae-analytics-tca-web</module>
49     </modules>
50
51     <properties>
52
53         <!-- PROJECT SETTINGS -->
54         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
55         <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
56         <main.basedir>${project.basedir}</main.basedir>
57
58         <!-- DEPENDENCIES VERSION -->
59         <eelf.logger.version>1.0.1-SNAPSHOT</eelf.logger.version>
60         <spring.boot.version>2.4.4</spring.boot.version>
61         <spring.cloud.version>Finchley.RC2</spring.cloud.version>
62         <commons.text.version>1.4</commons.text.version>
63         <springfox-swagger2.version>3.0.0</springfox-swagger2.version>
64         <findbugs.jsr305.version>3.0.2</findbugs.jsr305.version>
65         <findbugs.annotations.version>3.0.1</findbugs.annotations.version>
66
67         <!-- TEST DEPENDENCIES -->
68         <junit-jupiter.version>5.6.2</junit-jupiter.version>
69         <junit-platform.version>1.6.2</junit-platform.version>
70         <apiguardian-api.version>1.0.0</apiguardian-api.version>
71
72         <!--TEST SETTINGS -->
73         <surefire.redirectTestOutputToFile>true</surefire.redirectTestOutputToFile>
74         <!-- PLUGINS VERSIONS -->
75         <maven-compiler-plugin.version>3.8.0</maven-compiler-plugin.version>
76         <maven-jar-plugin.version>3.0.2</maven-jar-plugin.version>
77         <maven-assembly-plugin.version>3.1.0</maven-assembly-plugin.version>
78         <maven-javadoc-plugin.version>3.0.0</maven-javadoc-plugin.version>
79         <maven-surefire-plugin.version>2.22.2</maven-surefire-plugin.version>
80         <maven-failsafe-plugin.version>2.22.2</maven-failsafe-plugin.version>
81         <maven-source-plugin.version>3.0.1</maven-source-plugin.version>
82         <maven-deploy-plugin.version>2.8.2</maven-deploy-plugin.version>
83         <jacoco.plugin.version>0.8.1</jacoco.plugin.version>
84         <sonar.coverage.jacoco.xmlReportPaths>${project.reporting.outputDirectory}/jacoco-ut/jacoco.xml
85         </sonar.coverage.jacoco.xmlReportPaths>
86         <pmd.plugin.version>3.11.0</pmd.plugin.version>
87         <checkstyle.plugin.version>2.17</checkstyle.plugin.version>
88         <lombok.plugin.version>1.18.0.0</lombok.plugin.version>
89         <gitcommitid.plugin.version>2.2.3</gitcommitid.plugin.version>
90         <maven.build.helper.plugin.version>3.0.0</maven.build.helper.plugin.version>
91         <docker-maven-version>1.0.0</docker-maven-version>
92
93         <!--PLUGIN SETTINGS -->
94         <compiler.source.version>11</compiler.source.version>
95         <compiler.target.version>11</compiler.target.version>
96         <unit.test.pattern>**/*Test.java</unit.test.pattern>
97         <skip.unit.tests>false</skip.unit.tests>
98         <integration.test.pattern>**/*IT.java</integration.test.pattern>
99         <skip.integration.tests>false</skip.integration.tests>
100         <pmd.violation.buildfail>true</pmd.violation.buildfail>
101         <findbugs.failOnError>true</findbugs.failOnError>
102         <checkstyle.failOnViolation>false</checkstyle.failOnViolation>
103         <checkstyle.file.name>checkstyle.xml</checkstyle.file.name>
104         <checkstyle.suppression.file.name>checkstyle-suppressions.xml</checkstyle.suppression.file.name>
105
106
107         <dependency.locations.enabled>false</dependency.locations.enabled>
108         <nexusproxy>https://nexus.onap.org</nexusproxy>
109         <snapshots.path>content/repositories/snapshots/</snapshots.path>
110         <releases.path>content/repositories/releases/</releases.path>
111         <docker.repository>nexus3.onap.org:10003</docker.repository>
112         <spring-swagger-ui.version>2.10.5</spring-swagger-ui.version>
113
114         <!-- SONAR EXCLUSIONS -->
115         <!-- EXCLUDE TEST COVERAGE ON
116           TEST PACKAGES - USED FOR TESTING - NOT FOR DEPLOYMENT
117           MODEL PACKAGES - MODELS ONLY CONTAINS POJOs AND NO BUSINESS LOGIC,
118           CONFIG PACKAGE -  CONTAINS WIRINGS OF SPRING BEANS,
119           EXCEPTIONS PACKAGE - CONTAINS CUSTOM EXCEPTIONS - NO BUSINESS LOGIC,
120           PREFERENCES CLASSES - JUST POJOS
121           CONTEXTS CLASSES - JUST POJOS
122           ENTITY CLASSES - JUST POJOS
123           -->
124         <sonar.coverage.exclusions>**/test/**,**/model/**,**/config/**,**/exception/**,**/*Preferences.java,**/*Context*.java,**/*Entity.java</sonar.coverage.exclusions>
125
126     </properties>
127
128
129
130     <dependencyManagement>
131
132         <dependencies>
133
134             <!-- PROJECT DEPENDENCIES -->
135             <dependency>
136                 <groupId>${project.groupId}</groupId>
137                 <artifactId>dcae-analytics-test</artifactId>
138                 <version>${project.version}</version>
139                 <scope>test</scope>
140             </dependency>
141
142             <dependency>
143                 <groupId>${project.groupId}</groupId>
144                 <artifactId>dcae-analytics-model</artifactId>
145                 <version>${project.version}</version>
146             </dependency>
147
148             <dependency>
149                 <groupId>${project.groupId}</groupId>
150                 <artifactId>dcae-analytics-web</artifactId>
151                 <version>${project.version}</version>
152             </dependency>
153
154             <dependency>
155                 <groupId>${project.groupId}</groupId>
156                 <artifactId>dcae-analytics-tca-model</artifactId>
157                 <version>${project.version}</version>
158             </dependency>
159
160             <dependency>
161                 <groupId>${project.groupId}</groupId>
162                 <artifactId>dcae-analytics-tca-core</artifactId>
163                 <version>${project.version}</version>
164             </dependency>
165
166             <!-- EELF LOGGER -->
167             <dependency>
168                 <groupId>org.onap.dcaegen2.analytics.tca-gen2</groupId>
169                 <artifactId>eelf-logger-logback-impl</artifactId>
170                 <version>${project.version}</version>
171             </dependency>
172
173             <!-- UTILITIES -->
174             <dependency>
175                 <groupId>org.apache.commons</groupId>
176                 <artifactId>commons-text</artifactId>
177                 <version>${commons.text.version}</version>
178             </dependency>
179
180             <!-- REST API SWAGGER -->
181             <dependency>
182                 <groupId>io.springfox</groupId>
183                 <artifactId>springfox-swagger2</artifactId>
184                 <version>${springfox-swagger2.version}</version>
185                 <exclusions>
186                     <exclusion>
187                         <groupId>org.springframework.plugin</groupId>
188                         <artifactId>spring-plugin-core</artifactId>
189                     </exclusion>
190                 </exclusions>
191             </dependency>
192             <dependency>
193                 <groupId>org.springframework.plugin</groupId>
194                 <artifactId>spring-plugin-core</artifactId>
195                 <version>2.0.0.RELEASE</version>
196             </dependency>
197             <dependency>
198                 <groupId>io.springfox</groupId>
199                 <artifactId>springfox-swagger-ui</artifactId>
200                 <version>${spring-swagger-ui.version}</version>
201             </dependency>
202
203             <!-- FIND BUGS -->
204             <dependency>
205                 <groupId>com.google.code.findbugs</groupId>
206                 <artifactId>jsr305</artifactId>
207                 <version>${findbugs.jsr305.version}</version>
208                 <scope>provided</scope>
209             </dependency>
210             <dependency>
211                 <groupId>com.google.code.findbugs</groupId>
212                 <artifactId>annotations</artifactId>
213                 <version>${findbugs.annotations.version}</version>
214                 <scope>provided</scope>
215             </dependency>
216
217             <!-- JUNIT 5 DEPENDENCIES -->
218             <dependency>
219                 <groupId>org.junit.jupiter</groupId>
220                 <artifactId>junit-jupiter-api</artifactId>
221                 <version>${junit-jupiter.version}</version>
222                 <scope>test</scope>
223             </dependency>
224             <dependency>
225                 <groupId>org.junit.jupiter</groupId>
226                 <artifactId>junit-jupiter-engine</artifactId>
227                 <version>${junit-jupiter.version}</version>
228                 <scope>test</scope>
229             </dependency>
230             <dependency>
231                 <groupId>org.junit.jupiter</groupId>
232                 <artifactId>junit-jupiter-params</artifactId>
233                 <version>${junit-jupiter.version}</version>
234                 <scope>test</scope>
235             </dependency>
236             <dependency>
237                 <groupId>junit</groupId>
238                 <artifactId>junit</artifactId>
239                 <version>4.13</version>
240                 <scope>test</scope>
241             </dependency>
242             <dependency>
243                 <groupId>org.junit.vintage</groupId>
244                 <artifactId>junit-vintage-engine</artifactId>
245                 <version>5.6.2</version>
246                 <scope>test</scope>
247             </dependency>
248             <dependency>
249                 <groupId>org.junit.platform</groupId>
250                 <artifactId>junit-platform-engine</artifactId>
251                 <version>1.6.2</version>
252                 <scope>test</scope>
253             </dependency>
254             <dependency>
255                 <groupId>org.junit.platform</groupId>
256                 <artifactId>junit-platform-launcher</artifactId>
257                 <version>1.6.2</version>
258                 <scope>test</scope>
259             </dependency>
260             <dependency>
261                 <groupId>org.apiguardian</groupId>
262                 <artifactId>apiguardian-api</artifactId>
263                 <version>${apiguardian-api.version}</version>
264                 <scope>test</scope>
265             </dependency>
266
267             <!-- IMPORT DEPENDENCY MANAGEMENT FROM SPRING BOOT -->
268             <dependency>
269                 <groupId>org.springframework.boot</groupId>
270                 <artifactId>spring-boot-dependencies</artifactId>
271                 <version>${spring.boot.version}</version>
272                 <type>pom</type>
273                 <scope>import</scope>
274             </dependency>
275             <!-- IMPORT DEPENDENCY MANAGEMENT FROM SPRING CLOUD -->
276             <dependency>
277                 <groupId>org.springframework.cloud</groupId>
278                 <artifactId>spring-cloud-dependencies</artifactId>
279                 <version>${spring.cloud.version}</version>
280                 <type>pom</type>
281                 <scope>import</scope>
282             </dependency>
283
284         </dependencies>
285     </dependencyManagement>
286
287     <build>
288
289         <pluginManagement>
290
291             <plugins>
292
293                 <!-- COMPILER PLUGIN -->
294                 <plugin>
295                     <groupId>org.apache.maven.plugins</groupId>
296                     <artifactId>maven-compiler-plugin</artifactId>
297                     <version>${maven-compiler-plugin.version}</version>
298                     <configuration>
299                         <fork>true</fork>
300                         <debug>true</debug>
301                         <meminitial>256m</meminitial>
302                         <maxmem>1024m</maxmem>
303                         <source>${compiler.target.version}</source>
304                         <target>${compiler.source.version}</target>
305                         <showWarnings>true</showWarnings>
306                         <showDeprecation>true</showDeprecation>
307                     </configuration>
308                 </plugin>
309
310                 <!-- MAVEN SOURCE PLUGIN -->
311                 <plugin>
312                     <groupId>org.apache.maven.plugins</groupId>
313                     <artifactId>maven-source-plugin</artifactId>
314                     <version>${maven-source-plugin.version}</version>
315                     <configuration>
316                         <excludeResources>true</excludeResources>
317                     </configuration>
318                     <executions>
319                         <execution>
320                             <id>attach-sources</id>
321                             <phase>verify</phase>
322                             <goals>
323                                 <goal>jar-no-fork</goal>
324                             </goals>
325                         </execution>
326                     </executions>
327                 </plugin>
328
329                 <!-- MAVEN JAVADOC PLUGIN -->
330                 <plugin>
331                     <groupId>org.apache.maven.plugins</groupId>
332                     <artifactId>maven-javadoc-plugin</artifactId>
333                     <version>${maven-javadoc-plugin.version}</version>
334                     <configuration>
335                         <!-- minimize console output messages -->
336                         <quiet>true</quiet>
337                         <verbose>false</verbose>
338                         <useStandardDocletOptions>false</useStandardDocletOptions>
339                     </configuration>
340                     <executions>
341                         <execution>
342                             <id>aggregate</id>
343                             <phase>site</phase>
344                             <goals>
345                                 <goal>aggregate</goal>
346                             </goals>
347                         </execution>
348                         <execution>
349                             <id>attach-javadoc</id>
350                             <goals>
351                                 <goal>jar</goal>
352                             </goals>
353                         </execution>
354                     </executions>
355                 </plugin>
356
357                 <!-- MAVEN DEPLOY PLUGIN -->
358                 <plugin>
359                     <artifactId>maven-deploy-plugin</artifactId>
360                     <version>${maven-deploy-plugin.version}</version>
361                     <configuration>
362                         <deployAtEnd>true</deployAtEnd>
363                     </configuration>
364                 </plugin>
365
366                 <!-- SUREFIRE TEST PLUGIN -->
367                 <plugin>
368                     <groupId>org.apache.maven.plugins</groupId>
369                     <artifactId>maven-surefire-plugin</artifactId>
370                     <version>${maven-surefire-plugin.version}</version>
371                     <configuration>
372                         <skipTests>${skip.unit.tests}</skipTests>
373                         <argLine>-Xmx2048m -Djava.awt.headless=true -XX:+UseConcMarkSweepGC
374                             -XX:OnOutOfMemoryError="kill -9 %p" -XX:+HeapDumpOnOutOfMemoryError ${surefireArgLine}
375                         </argLine>
376                         <redirectTestOutputToFile>${surefire.redirectTestOutputToFile}</redirectTestOutputToFile>
377                         <parallel>classesAndMethods</parallel>
378                         <threadCount>4</threadCount>
379                         <forkCount>4</forkCount>
380                         <reuseForks>false</reuseForks>
381                         <reportFormat>xml</reportFormat>
382                         <trimStackTrace>false</trimStackTrace>
383                         <systemPropertyVariables>
384                             <java.io.tmpdir>${project.build.directory}</java.io.tmpdir>
385                             <logback.configurationFile>
386                                 ${basedir}/src/test/resources/logback-test.xml
387                             </logback.configurationFile>
388                             <logging.config>classpath:logback-test.xml</logging.config>
389                         </systemPropertyVariables>
390                         <includes>
391                             <include>${unit.test.pattern}</include>
392                         </includes>
393                         <excludes>
394                             <exclude>${integration.test.pattern}</exclude>
395                         </excludes>
396                     </configuration>
397                 </plugin>
398
399                 <!-- FAIL SAFE PLUGIN FOR INTEGRATION TEST -->
400                 <plugin>
401                     <groupId>org.apache.maven.plugins</groupId>
402                     <artifactId>maven-failsafe-plugin</artifactId>
403                     <version>${maven-failsafe-plugin.version}</version>
404                     <executions>
405                         <execution>
406                             <id>integration-tests</id>
407                             <goals>
408                                 <goal>integration-test</goal>
409                                 <goal>verify</goal>
410                             </goals>
411                             <configuration>
412                                 <argLine>${failsafeArgLine}</argLine>
413                                 <redirectTestOutputToFile>true</redirectTestOutputToFile>
414                                 <skipTests>${skip.integration.tests}</skipTests>
415                                 <includes>
416                                     <include>${integration.test.pattern}</include>
417                                 </includes>
418                                 <excludes>
419                                     <exclude>${unit.test.pattern}</exclude>
420                                 </excludes>
421                                 <systemPropertyVariables>
422                                     <java.io.tmpdir>${project.build.directory}</java.io.tmpdir>
423                                     <logging.config>classpath:logback-test.xml</logging.config>
424                                 </systemPropertyVariables>
425                             </configuration>
426                         </execution>
427                     </executions>
428                 </plugin>
429
430                 <!-- PMD PLUGIN SETUP -->
431                 <plugin>
432                     <groupId>org.apache.maven.plugins</groupId>
433                     <artifactId>maven-pmd-plugin</artifactId>
434                     <version>${pmd.plugin.version}</version>
435                     <configuration>
436                         <sourceEncoding>${project.build.sourceEncoding}</sourceEncoding>
437                         <targetJdk>${compiler.target.version}</targetJdk>
438                         <linkXRef>false</linkXRef>
439                         <excludes>
440                             <exclude>**/*Mixin.java</exclude>
441                         </excludes>
442                         <!-- BUILD FAIL ON PMD VIOLATION -->
443                         <failOnViolation>${pmd.violation.buildfail}</failOnViolation>
444                         <targetDirectory>${project.reporting.outputDirectory}/pmd</targetDirectory>
445                     </configuration>
446                     <executions>
447                         <execution>
448                             <id>pmd-check</id>
449                             <goals>
450                                 <goal>check</goal>
451                             </goals>
452                             <configuration>
453                                 <printFailingErrors>true</printFailingErrors>
454                                 <excludeFromFailureFile>${main.basedir}/pmd-exclude.properties</excludeFromFailureFile>
455                             </configuration>
456                         </execution>
457                         <execution>
458                             <id>cpd-check</id>
459                             <goals>
460                                 <goal>cpd-check</goal>
461                             </goals>
462                             <configuration>
463                                 <printFailingErrors>true</printFailingErrors>
464                                 <excludeFromFailureFile>${main.basedir}/cpd-exclude.properties</excludeFromFailureFile>
465                             </configuration>
466                         </execution>
467                     </executions>
468                 </plugin>
469
470                 <!-- CHECKSTYLE PLUGIN -->
471                 <plugin>
472                     <groupId>org.apache.maven.plugins</groupId>
473                     <artifactId>maven-checkstyle-plugin</artifactId>
474                     <version>${checkstyle.plugin.version}</version>
475                     <executions>
476                         <execution>
477                             <id>validate</id>
478                             <phase>validate</phase>
479                             <configuration>
480                                     <skip>true</skip>
481                                 <configLocation>${checkstyle.file.name}</configLocation>
482                                 <suppressionsLocation>${checkstyle.suppression.file.name}</suppressionsLocation>
483                                 <encoding>UTF-8</encoding>
484                                 <consoleOutput>true</consoleOutput>
485                                 <!-- BUILD FAIL ON CHECKSTYLE VIOLATION -->
486                                 <failOnViolation>${checkstyle.failOnViolation}</failOnViolation>
487                                 <includeTestSourceDirectory>true</includeTestSourceDirectory>
488                                 <outputFile>${project.reporting.outputDirectory}/checkstyle</outputFile>
489                             </configuration>
490                             <goals>
491                                 <goal>check</goal>
492                             </goals>
493                         </execution>
494                     </executions>
495                     <dependencies>
496                         <dependency>
497                             <groupId>com.puppycrawl.tools</groupId>
498                             <artifactId>checkstyle</artifactId>
499                             <version>6.19</version>
500                         </dependency>
501                     </dependencies>
502                 </plugin>
503
504                 <!-- LOMBOK PLUGIN -->
505                 <plugin>
506                     <groupId>org.projectlombok</groupId>
507                     <artifactId>lombok-maven-plugin</artifactId>
508                     <version>${lombok.plugin.version}</version>
509                     <executions>
510                         <execution>
511                             <id>delombok</id>
512                             <phase>generate-sources</phase>
513                             <goals>
514                                 <goal>delombok</goal>
515                             </goals>
516                             <configuration>
517                                 <addOutputDirectory>false</addOutputDirectory>
518                                 <sourceDirectory>src/main/java</sourceDirectory>
519                             </configuration>
520                         </execution>
521                     </executions>
522                 </plugin>
523
524                 <!-- GIT COMMIT ID PLUGIN -->
525                 <plugin>
526                     <groupId>pl.project13.maven</groupId>
527                     <artifactId>git-commit-id-plugin</artifactId>
528                     <version>${gitcommitid.plugin.version}</version>
529                     <executions>
530                         <execution>
531                             <id>generate-git-properties</id>
532                             <phase>generate-resources</phase>
533                             <goals>
534                                 <goal>revision</goal>
535                             </goals>
536                             <configuration>
537                                 <failOnNoGitDirectory>false</failOnNoGitDirectory>
538                                 <generateGitPropertiesFile>true</generateGitPropertiesFile>
539                                 <generateGitPropertiesFilename>
540                                     ${project.build.directory}/git/git.properties
541                                 </generateGitPropertiesFilename>
542                             </configuration>
543                         </execution>
544                     </executions>
545                 </plugin>
546
547                 <!-- JAR PLUGIN -->
548                 <plugin>
549                     <groupId>org.apache.maven.plugins</groupId>
550                     <artifactId>maven-jar-plugin</artifactId>
551                     <version>${maven-jar-plugin.version}</version>
552                     <configuration>
553                         <archive>
554                             <manifest>
555                                 <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
556                             </manifest>
557                             <manifestEntries>
558                                 <Implementation-Build-Version>${project.version}</Implementation-Build-Version>
559                             </manifestEntries>
560                         </archive>
561                     </configuration>
562                 </plugin>
563
564
565                 <!-- ASSEMBLY PLUGIN -->
566                 <plugin>
567                     <groupId>org.apache.maven.plugins</groupId>
568                     <artifactId>maven-assembly-plugin</artifactId>
569                     <version>${maven-assembly-plugin.version}</version>
570                     <configuration>
571                         <descriptors>
572                             <descriptor>${main.basedir}/assembly/cdp-assembly-descriptor.xml</descriptor>
573                         </descriptors>
574                     </configuration>
575                     <executions>
576                         <execution>
577                             <id>cdp-assembly</id>
578                             <phase>package</phase>
579                             <goals>
580                                 <goal>single</goal>
581                             </goals>
582                         </execution>
583                     </executions>
584                 </plugin>
585
586                 <!-- BUILD HELPER PLUGIN -->
587                 <plugin>
588                     <groupId>org.codehaus.mojo</groupId>
589                     <artifactId>build-helper-maven-plugin</artifactId>
590                     <version>${maven.build.helper.plugin.version}</version>
591                 </plugin>
592
593                 <!-- SPRING BOOT PLUGIN -->
594                 <plugin>
595                     <groupId>org.springframework.boot</groupId>
596                     <artifactId>spring-boot-maven-plugin</artifactId>
597                     <version>${spring.boot.version}</version>
598                     <executions>
599                         <execution>
600                             <id>build-info</id>
601                             <goals>
602                                 <goal>build-info</goal>
603                             </goals>
604                         </execution>
605                         <execution>
606                             <id>spring-boot-uber-jar</id>
607                             <goals>
608                                 <goal>repackage</goal>
609                             </goals>
610                         </execution>
611                     </executions>
612                 </plugin>
613             </plugins>
614
615         </pluginManagement>
616
617
618         <plugins>
619
620             <plugin>
621                 <groupId>org.apache.maven.plugins</groupId>
622                 <artifactId>maven-compiler-plugin</artifactId>
623             </plugin>
624
625             <plugin>
626                 <groupId>org.apache.maven.plugins</groupId>
627                 <artifactId>maven-jar-plugin</artifactId>
628             </plugin>
629
630             <plugin>
631                 <groupId>org.apache.maven.plugins</groupId>
632                 <artifactId>maven-surefire-plugin</artifactId>
633             </plugin>
634
635             <plugin>
636                 <groupId>org.apache.maven.plugins</groupId>
637                 <artifactId>maven-failsafe-plugin</artifactId>
638             </plugin>
639
640             <plugin>
641                 <groupId>org.apache.maven.plugins</groupId>
642                 <artifactId>maven-source-plugin</artifactId>
643             </plugin>
644
645             <plugin>
646                 <groupId>org.apache.maven.plugins</groupId>
647                 <artifactId>maven-javadoc-plugin</artifactId>
648             </plugin>
649
650             <plugin>
651                 <groupId>org.apache.maven.plugins</groupId>
652                 <artifactId>maven-deploy-plugin</artifactId>
653             </plugin>
654
655             <plugin>
656                 <groupId>org.apache.maven.plugins</groupId>
657                 <artifactId>maven-pmd-plugin</artifactId>
658             </plugin>
659
660             <plugin>
661                 <groupId>org.apache.maven.plugins</groupId>
662                 <artifactId>maven-checkstyle-plugin</artifactId>
663             </plugin>
664
665             <plugin>
666                 <groupId>org.jacoco</groupId>
667                 <artifactId>jacoco-maven-plugin</artifactId>
668             </plugin>
669
670         </plugins>
671     </build>
672
673 </project>