[NO-TICKET] +add geoIP
[platform/core/security/suspicious-activity-monitor.git] / server / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
3     <modelVersion>4.0.0</modelVersion>
4
5     <groupId>com.samsung.samserver</groupId>
6     <artifactId>samserver</artifactId>
7     <version>0.0.1-SNAPSHOT</version>
8     <packaging>war</packaging>
9     <name>Samserver</name>
10
11     <properties>
12         <!-- Build properties -->
13         <maven.version>3.0.0</maven.version>
14         <java.version>1.8</java.version>
15         <scala.version>2.12.1</scala.version>
16         <node.version>v8.9.4</node.version>
17         <yarn.version>v1.3.2</yarn.version>
18         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
19         <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
20         <project.testresult.directory>${project.build.directory}/test-results</project.testresult.directory>
21         <maven.build.timestamp.format>yyyyMMddHHmmss</maven.build.timestamp.format>
22         <maven.compiler.source>${java.version}</maven.compiler.source>
23         <maven.compiler.target>${java.version}</maven.compiler.target>
24         <argLine>-Djava.security.egd=file:/dev/./urandom -Xmx256m</argLine>
25         <m2e.apt.activation>jdt_apt</m2e.apt.activation>
26         <run.addResources>false</run.addResources>
27         <!-- These remain empty unless the corresponding profile is active -->
28         <profile.no-liquibase />
29         <profile.swagger />
30
31         <!-- Dependency versions -->
32         <jhipster-dependencies.version>0.1.7</jhipster-dependencies.version>
33         <!-- The spring-boot version should match the one managed by
34         https://mvnrepository.com/artifact/io.github.jhipster/jhipster-dependencies/${jhipster-dependencies.version} -->
35         <spring-boot.version>1.5.9.RELEASE</spring-boot.version>
36         <!-- The hibernate version should match the one managed by
37         https://mvnrepository.com/artifact/io.github.jhipster/jhipster-dependencies/${jhipster-dependencies.version} -->
38         <hibernate.version>5.2.12.Final</hibernate.version>
39         <!-- The javassist version should match the one managed by
40         https://mvnrepository.com/artifact/org.hibernate/hibernate-core/${hibernate.version} -->
41         <javassist.version>3.20.0-GA</javassist.version>
42         <!-- The liquibase version should match the one managed by
43         https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-dependencies/${spring-boot.version} -->
44         <liquibase.version>3.5.3</liquibase.version>
45         <liquibase-hibernate5.version>3.6</liquibase-hibernate5.version>
46         <validation-api.version>1.1.0.Final</validation-api.version>
47         <mapstruct.version>1.2.0.Final</mapstruct.version>
48
49         <!-- Plugin versions -->
50         <maven-clean-plugin.version>2.6.1</maven-clean-plugin.version>
51         <maven-compiler-plugin.version>3.7.0</maven-compiler-plugin.version>
52         <maven-eclipse-plugin.version>2.10</maven-eclipse-plugin.version>
53         <maven-enforcer-plugin.version>3.0.0-M1</maven-enforcer-plugin.version>
54         <maven-resources-plugin.version>3.0.1</maven-resources-plugin.version>
55         <maven-surefire-plugin.version>2.18.1</maven-surefire-plugin.version>
56         <maven-war-plugin.version>2.6</maven-war-plugin.version>
57         <dockerfile-maven-plugin.version>1.3.4</dockerfile-maven-plugin.version>
58         <jacoco-maven-plugin.version>0.8.0</jacoco-maven-plugin.version>
59         <scala-maven-plugin.version>3.2.2</scala-maven-plugin.version>
60         <sonar-maven-plugin.version>3.4.0.905</sonar-maven-plugin.version>
61
62         <!-- Sonar properties -->
63         <sonar.inclusions>**/*.java</sonar.inclusions>
64         <sonar.exclusions>src/main/webapp/content/**/*.*, src/main/webapp/i18n/*.js, target/www/**/*.*</sonar.exclusions>
65         <sonar.issue.ignore.multicriteria>S3437,UndocumentedApi,BoldAndItalicTagsCheck</sonar.issue.ignore.multicriteria>
66         <!-- Rule https://sonarqube.com/coding_rules#rule_key=Web%3ABoldAndItalicTagsCheck is ignored. Even if we agree that using the "i" tag is an awful practice, this is what is recommended by http://fontawesome.io/examples/ -->
67         <sonar.issue.ignore.multicriteria.BoldAndItalicTagsCheck.resourceKey>src/main/webapp/app/**/*.*</sonar.issue.ignore.multicriteria.BoldAndItalicTagsCheck.resourceKey>
68         <sonar.issue.ignore.multicriteria.BoldAndItalicTagsCheck.ruleKey>Web:BoldAndItalicTagsCheck</sonar.issue.ignore.multicriteria.BoldAndItalicTagsCheck.ruleKey>
69         <!-- Rule https://sonarqube.com/coding_rules#rule_key=squid%3AS3437 is ignored, as a JPA-managed field cannot be transient -->
70         <sonar.issue.ignore.multicriteria.S3437.resourceKey>src/main/java/**/*</sonar.issue.ignore.multicriteria.S3437.resourceKey>
71         <sonar.issue.ignore.multicriteria.S3437.ruleKey>squid:S3437</sonar.issue.ignore.multicriteria.S3437.ruleKey>
72         <!-- Rule http://sonarqube.com/coding_rules#rule_key=squid%3AUndocumentedApi is ignored, as we want to follow "clean code" guidelines and classes, methods and arguments names should be self-explanatory -->
73         <sonar.issue.ignore.multicriteria.UndocumentedApi.resourceKey>src/main/java/**/*</sonar.issue.ignore.multicriteria.UndocumentedApi.resourceKey>
74         <sonar.issue.ignore.multicriteria.UndocumentedApi.ruleKey>squid:UndocumentedApi</sonar.issue.ignore.multicriteria.UndocumentedApi.ruleKey>
75         <sonar.jacoco.itReportPath>${project.testresult.directory}/coverage/jacoco/jacoco-it.exec</sonar.jacoco.itReportPath>
76         <sonar.jacoco.reportPath>${project.testresult.directory}/coverage/jacoco/jacoco.exec</sonar.jacoco.reportPath>
77         <sonar.java.codeCoveragePlugin>jacoco</sonar.java.codeCoveragePlugin>
78         <sonar.javascript.jstestdriver.reportsPath>${project.testresult.directory}/karma</sonar.javascript.jstestdriver.reportsPath>
79         <sonar.typescript.lcov.reportPaths>${project.testresult.directory}/coverage/report-lcov/lcov.info</sonar.typescript.lcov.reportPaths>
80         <sonar.sources>${project.basedir}/src/main/</sonar.sources>
81         <sonar.surefire.reportsPath>${project.testresult.directory}/surefire-reports</sonar.surefire.reportsPath>
82         <sonar.tests>${project.basedir}/src/test/</sonar.tests>
83
84         <apache.commons-codec.version>1.11</apache.commons-codec.version>
85         <springfox-swagger-ui.version>2.8.0</springfox-swagger-ui.version>
86         <jackson-dataformats-binary.version>2.9.4</jackson-dataformats-binary.version>
87         <lombok.version>1.16.20</lombok.version>
88         <geoip2.version>2.11.0</geoip2.version>
89
90     </properties>
91
92     <dependencyManagement>
93         <dependencies>
94             <dependency>
95                 <groupId>io.github.jhipster</groupId>
96                 <artifactId>jhipster-dependencies</artifactId>
97                 <version>${jhipster-dependencies.version}</version>
98                 <type>pom</type>
99                 <scope>import</scope>
100             </dependency>
101             <!-- jhipster-needle-maven-add-dependency-management -->
102         </dependencies>
103     </dependencyManagement>
104
105     <dependencies>
106         <dependency>
107             <groupId>io.github.jhipster</groupId>
108             <artifactId>jhipster</artifactId>
109         </dependency>
110         <dependency>
111             <groupId>io.dropwizard.metrics</groupId>
112             <artifactId>metrics-core</artifactId>
113         </dependency>
114         <dependency>
115             <groupId>io.dropwizard.metrics</groupId>
116             <artifactId>metrics-annotation</artifactId>
117         </dependency>
118         <dependency>
119             <groupId>io.dropwizard.metrics</groupId>
120             <artifactId>metrics-json</artifactId>
121         </dependency>
122         <dependency>
123             <groupId>io.dropwizard.metrics</groupId>
124             <artifactId>metrics-jvm</artifactId>
125         </dependency>
126         <dependency>
127             <groupId>io.dropwizard.metrics</groupId>
128             <artifactId>metrics-servlet</artifactId>
129         </dependency>
130         <dependency>
131             <groupId>io.dropwizard.metrics</groupId>
132             <artifactId>metrics-servlets</artifactId>
133         </dependency>
134         <dependency>
135             <groupId>com.fasterxml.jackson.datatype</groupId>
136             <artifactId>jackson-datatype-hibernate5</artifactId>
137         </dependency>
138         <dependency>
139             <groupId>com.fasterxml.jackson.datatype</groupId>
140             <artifactId>jackson-datatype-hppc</artifactId>
141         </dependency>
142         <dependency>
143             <groupId>com.fasterxml.jackson.datatype</groupId>
144             <artifactId>jackson-datatype-jsr310</artifactId>
145         </dependency>
146         <dependency>
147             <groupId>com.fasterxml.jackson.datatype</groupId>
148             <artifactId>jackson-datatype-json-org</artifactId>
149         </dependency>
150         <dependency>
151             <groupId>com.fasterxml.jackson.module</groupId>
152             <artifactId>jackson-module-afterburner</artifactId>
153         </dependency>
154         <dependency>
155             <groupId>com.h2database</groupId>
156             <artifactId>h2</artifactId>
157             <scope>test</scope>
158         </dependency>
159         <dependency>
160             <groupId>com.jayway.jsonpath</groupId>
161             <artifactId>json-path</artifactId>
162             <scope>test</scope>
163             <!-- parent POM declares this dependency in default (compile) scope -->
164         </dependency>
165         <dependency>
166             <groupId>io.springfox</groupId>
167             <artifactId>springfox-swagger2</artifactId>
168         </dependency>
169         <dependency>
170             <groupId>io.springfox</groupId>
171             <artifactId>springfox-bean-validators</artifactId>
172         </dependency>
173         <dependency>
174             <groupId>io.springfox</groupId>
175             <artifactId>springfox-swagger-ui</artifactId>
176             <version>${springfox-swagger-ui.version}</version>
177         </dependency>
178         <dependency>
179             <groupId>com.mattbertolini</groupId>
180             <artifactId>liquibase-slf4j</artifactId>
181         </dependency>
182         <dependency>
183             <groupId>com.ryantenney.metrics</groupId>
184             <artifactId>metrics-spring</artifactId>
185         </dependency>
186         <dependency>
187             <groupId>com.zaxxer</groupId>
188             <artifactId>HikariCP</artifactId>
189         </dependency>
190         <dependency>
191             <groupId>commons-io</groupId>
192             <artifactId>commons-io</artifactId>
193         </dependency>
194         <dependency>
195             <groupId>org.apache.commons</groupId>
196             <artifactId>commons-lang3</artifactId>
197         </dependency>
198         <dependency>
199             <groupId>org.assertj</groupId>
200             <artifactId>assertj-core</artifactId>
201             <scope>test</scope>
202         </dependency>
203         <dependency>
204             <groupId>org.hibernate</groupId>
205             <artifactId>hibernate-envers</artifactId>
206         </dependency>
207         <dependency>
208             <groupId>org.hibernate</groupId>
209             <artifactId>hibernate-validator</artifactId>
210         </dependency>
211         <dependency>
212             <groupId>org.liquibase</groupId>
213             <artifactId>liquibase-core</artifactId>
214         </dependency>
215         <dependency>
216             <groupId>net.logstash.logback</groupId>
217             <artifactId>logstash-logback-encoder</artifactId>
218         </dependency>
219         <dependency>
220             <groupId>org.postgresql</groupId>
221             <artifactId>postgresql</artifactId>
222         </dependency>
223         <dependency>
224             <groupId>org.mapstruct</groupId>
225             <artifactId>mapstruct-jdk8</artifactId>
226             <version>${mapstruct.version}</version>
227         </dependency>
228         <dependency>
229             <groupId>org.springframework</groupId>
230             <artifactId>spring-context-support</artifactId>
231         </dependency>
232         <dependency>
233             <groupId>org.springframework.boot</groupId>
234             <artifactId>spring-boot-actuator</artifactId>
235         </dependency>
236         <dependency>
237             <groupId>org.springframework.boot</groupId>
238             <artifactId>spring-boot-autoconfigure</artifactId>
239         </dependency>
240         <dependency>
241             <groupId>org.springframework.boot</groupId>
242             <artifactId>spring-boot-configuration-processor</artifactId>
243             <optional>true</optional>
244         </dependency>
245         <dependency>
246             <groupId>org.springframework.boot</groupId>
247             <artifactId>spring-boot-loader-tools</artifactId>
248         </dependency>
249         <dependency>
250             <groupId>org.springframework.boot</groupId>
251             <artifactId>spring-boot-starter-aop</artifactId>
252         </dependency>
253         <dependency>
254             <groupId>org.springframework.boot</groupId>
255             <artifactId>spring-boot-starter-data-jpa</artifactId>
256         </dependency>
257         <dependency>
258             <groupId>org.springframework.boot</groupId>
259             <artifactId>spring-boot-starter-logging</artifactId>
260         </dependency>
261         <dependency>
262             <groupId>org.springframework.boot</groupId>
263             <artifactId>spring-boot-starter-mail</artifactId>
264         </dependency>
265         <dependency>
266             <groupId>org.springframework.boot</groupId>
267             <artifactId>spring-boot-starter-security</artifactId>
268         </dependency>
269         <dependency>
270             <groupId>org.springframework.boot</groupId>
271             <artifactId>spring-boot-starter-test</artifactId>
272             <scope>test</scope>
273         </dependency>
274         <dependency>
275             <groupId>org.springframework.security</groupId>
276             <artifactId>spring-security-test</artifactId>
277             <scope>test</scope>
278         </dependency>
279         <dependency>
280             <groupId>org.springframework.boot</groupId>
281             <artifactId>spring-boot-test</artifactId>
282             <scope>test</scope>
283         </dependency>
284         <dependency>
285             <groupId>org.springframework.boot</groupId>
286             <artifactId>spring-boot-starter-thymeleaf</artifactId>
287         </dependency>
288         <dependency>
289             <groupId>org.springframework.boot</groupId>
290             <artifactId>spring-boot-starter-web</artifactId>
291         </dependency>
292         <dependency>
293             <groupId>org.zalando</groupId>
294             <artifactId>problem-spring-web</artifactId>
295         </dependency>
296         <dependency>
297             <groupId>io.jsonwebtoken</groupId>
298             <artifactId>jjwt</artifactId>
299         </dependency>
300         <!-- Spring Cloud -->
301         <dependency>
302             <groupId>org.springframework.cloud</groupId>
303             <artifactId>spring-cloud-starter</artifactId>
304         </dependency>
305         <dependency>
306             <groupId>org.springframework.cloud</groupId>
307             <artifactId>spring-cloud-starter-ribbon</artifactId>
308         </dependency>
309         <dependency>
310             <groupId>org.springframework.cloud</groupId>
311             <artifactId>spring-cloud-starter-hystrix</artifactId>
312         </dependency>
313         <dependency>
314             <groupId>org.springframework.cloud</groupId>
315             <artifactId>spring-cloud-starter-spectator</artifactId>
316         </dependency>
317         <dependency>
318             <groupId>org.springframework.retry</groupId>
319             <artifactId>spring-retry</artifactId>
320         </dependency>
321         <dependency>
322             <groupId>org.springframework.cloud</groupId>
323             <artifactId>spring-cloud-starter-feign</artifactId>
324         </dependency>
325         <dependency>
326             <groupId>org.springframework.cloud</groupId>
327             <artifactId>spring-cloud-spring-service-connector</artifactId>
328         </dependency>
329         <!-- Security -->
330         <dependency>
331             <groupId>org.springframework.security</groupId>
332             <artifactId>spring-security-data</artifactId>
333         </dependency>
334         <!-- jhipster-needle-maven-add-dependency -->
335
336         <!-- https://mvnrepository.com/artifact/commons-codec/commons-codec -->
337         <dependency>
338             <groupId>commons-codec</groupId>
339             <artifactId>commons-codec</artifactId>
340             <version>${apache.commons-codec.version}</version>
341         </dependency>
342
343         <!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.dataformat/jackson-dataformats-binary -->
344         <dependency>
345             <groupId>com.fasterxml.jackson.dataformat</groupId>
346             <artifactId>jackson-dataformats-binary</artifactId>
347             <version>${jackson-dataformats-binary.version}</version>
348             <type>pom</type>
349         </dependency>
350
351         <!-- https://mvnrepository.com/artifact/org.projectlombok/lombok -->
352         <dependency>
353             <groupId>org.projectlombok</groupId>
354             <artifactId>lombok</artifactId>
355             <version>${lombok.version}</version>
356             <scope>provided</scope>
357         </dependency>
358
359         <!-- https://mvnrepository.com/artifact/com.maxmind.geoip2/geoip2 -->
360         <dependency>
361             <groupId>com.maxmind.geoip2</groupId>
362             <artifactId>geoip2</artifactId>
363             <version>${geoip2.version}</version>
364         </dependency>
365
366     </dependencies>
367
368     <build>
369         <defaultGoal>spring-boot:run</defaultGoal>
370         <plugins>
371             <plugin>
372                 <groupId>org.apache.maven.plugins</groupId>
373                 <artifactId>maven-compiler-plugin</artifactId>
374                 <version>${maven-compiler-plugin.version}</version>
375                 <configuration>
376                     <annotationProcessorPaths>
377                         <path>
378                             <groupId>org.mapstruct</groupId>
379                             <artifactId>mapstruct-processor</artifactId>
380                             <version>${mapstruct.version}</version>
381                         </path>
382                         <!-- For JPA static metamodel generation -->
383                         <path>
384                             <groupId>org.hibernate</groupId>
385                             <artifactId>hibernate-jpamodelgen</artifactId>
386                             <version>${hibernate.version}</version>
387                         </path>
388                         <!-- For lombok generation -->
389                         <path>
390                             <groupId>org.projectlombok</groupId>
391                             <artifactId>lombok</artifactId>
392                             <version>${lombok.version}</version>
393                         </path>
394                     </annotationProcessorPaths>
395                 </configuration>
396             </plugin>
397             <plugin>
398                 <groupId>org.apache.maven.plugins</groupId>
399                 <artifactId>maven-eclipse-plugin</artifactId>
400                 <version>${maven-eclipse-plugin.version}</version>
401                 <configuration>
402                     <downloadSources>true</downloadSources>
403                     <downloadJavadocs>true</downloadJavadocs>
404                 </configuration>
405             </plugin>
406             <plugin>
407                 <groupId>org.apache.maven.plugins</groupId>
408                 <artifactId>maven-enforcer-plugin</artifactId>
409                 <version>${maven-enforcer-plugin.version}</version>
410                 <executions>
411                     <execution>
412                         <id>enforce-versions</id>
413                         <goals>
414                             <goal>enforce</goal>
415                         </goals>
416                     </execution>
417                 </executions>
418                 <configuration>
419                     <rules>
420                         <requireMavenVersion>
421                             <message>You are running an older version of Maven. JHipster requires at least Maven ${maven.version}</message>
422                             <version>[${maven.version},)</version>
423                         </requireMavenVersion>
424                         <requireJavaVersion>
425                             <!-- Until JHipster supports JDK 9 -->
426                             <message>You are running an incompatible version of Java. JHipster requires JDK ${java.version}</message>
427                             <version>[1.8,1.9)</version>
428                         </requireJavaVersion>
429                     </rules>
430                 </configuration>
431             </plugin>
432             <plugin>
433                 <groupId>org.apache.maven.plugins</groupId>
434                 <artifactId>maven-resources-plugin</artifactId>
435                 <version>${maven-resources-plugin.version}</version>
436                 <executions>
437                     <execution>
438                         <id>default-resources</id>
439                         <phase>validate</phase>
440                         <goals>
441                             <goal>copy-resources</goal>
442                         </goals>
443                         <configuration>
444                             <outputDirectory>target/classes</outputDirectory>
445                             <useDefaultDelimiters>false</useDefaultDelimiters>
446                             <delimiters>
447                                 <delimiter>#</delimiter>
448                             </delimiters>
449                             <resources>
450                                 <resource>
451                                     <directory>src/main/resources/</directory>
452                                     <filtering>true</filtering>
453                                     <includes>
454                                         <include>config/*.yml</include>
455                                     </includes>
456                                 </resource>
457                                 <resource>
458                                     <directory>src/main/resources/</directory>
459                                     <filtering>false</filtering>
460                                     <excludes>
461                                         <exclude>config/*.yml</exclude>
462                                     </excludes>
463                                 </resource>
464                             </resources>
465                         </configuration>
466                     </execution>
467                     <execution>
468                         <id>docker-resources</id>
469                         <phase>validate</phase>
470                         <goals>
471                             <goal>copy-resources</goal>
472                         </goals>
473                         <configuration>
474                             <outputDirectory>target/</outputDirectory>
475                             <resources>
476                                 <resource>
477                                     <directory>src/main/docker/</directory>
478                                     <filtering>false</filtering>
479                                     <excludes>
480                                         <exclude>**/*.yml</exclude>
481                                     </excludes>
482                                 </resource>
483                             </resources>
484                         </configuration>
485                     </execution>
486                 </executions>
487             </plugin>
488             <plugin>
489                 <groupId>org.apache.maven.plugins</groupId>
490                 <artifactId>maven-surefire-plugin</artifactId>
491                 <version>${maven-surefire-plugin.version}</version>
492                 <configuration>
493                     <!-- Force alphabetical order to have a reproducible build -->
494                     <runOrder>alphabetical</runOrder>
495                 </configuration>
496             </plugin>
497             <plugin>
498                 <groupId>org.jacoco</groupId>
499                 <artifactId>jacoco-maven-plugin</artifactId>
500                 <version>${jacoco-maven-plugin.version}</version>
501                 <executions>
502                     <execution>
503                         <id>pre-unit-tests</id>
504                         <goals>
505                             <goal>prepare-agent</goal>
506                         </goals>
507                         <configuration>
508                             <!-- Sets the path to the file which contains the execution data. -->
509                             <destFile>${project.testresult.directory}/coverage/jacoco/jacoco.exec</destFile>
510                         </configuration>
511                     </execution>
512                     <!-- Ensures that the code coverage report for unit tests is created after unit tests have been run -->
513                     <execution>
514                         <id>post-unit-test</id>
515                         <phase>test</phase>
516                         <goals>
517                             <goal>report</goal>
518                         </goals>
519                         <configuration>
520                             <dataFile>${project.testresult.directory}/coverage/jacoco/jacoco.exec</dataFile>
521                             <outputDirectory>${project.testresult.directory}/coverage/jacoco</outputDirectory>
522                         </configuration>
523                     </execution>
524                 </executions>
525             </plugin>
526             <plugin>
527                 <groupId>org.sonarsource.scanner.maven</groupId>
528                 <artifactId>sonar-maven-plugin</artifactId>
529                 <version>${sonar-maven-plugin.version}</version>
530             </plugin>
531             <plugin>
532                 <groupId>org.liquibase</groupId>
533                 <artifactId>liquibase-maven-plugin</artifactId>
534                 <version>${liquibase.version}</version>
535                 <configuration>
536                     <changeLogFile>src/main/resources/config/liquibase/master.xml</changeLogFile>
537                     <diffChangeLogFile>src/main/resources/config/liquibase/changelog/${maven.build.timestamp}_changelog.xml</diffChangeLogFile>
538                     <driver></driver>
539                     <url></url>
540                     <defaultSchemaName></defaultSchemaName>
541                     <username>samserver</username>
542                     <password></password>
543                     <referenceUrl>hibernate:spring:com.samsung.samserver.domain?dialect=&amp;hibernate.physical_naming_strategy=org.springframework.boot.orm.jpa.hibernate.SpringPhysicalNamingStrategy&amp;hibernate.implicit_naming_strategy=org.springframework.boot.orm.jpa.hibernate.SpringImplicitNamingStrategy</referenceUrl>
544                     <verbose>true</verbose>
545                     <logging>debug</logging>
546                 </configuration>
547                 <dependencies>
548                     <dependency>
549                         <groupId>org.javassist</groupId>
550                         <artifactId>javassist</artifactId>
551                         <version>${javassist.version}</version>
552                     </dependency>
553                     <dependency>
554                         <groupId>org.liquibase.ext</groupId>
555                         <artifactId>liquibase-hibernate5</artifactId>
556                         <version>${liquibase-hibernate5.version}</version>
557                     </dependency>
558                     <dependency>
559                         <groupId>org.springframework.boot</groupId>
560                         <artifactId>spring-boot-starter-data-jpa</artifactId>
561                         <version>${spring-boot.version}</version>
562                     </dependency>
563                     <dependency>
564                         <groupId>javax.validation</groupId>
565                         <artifactId>validation-api</artifactId>
566                         <version>${validation-api.version}</version>
567                     </dependency>
568                 </dependencies>
569             </plugin>
570             <plugin>
571                 <groupId>org.springframework.boot</groupId>
572                 <artifactId>spring-boot-maven-plugin</artifactId>
573                 <version>${spring-boot.version}</version>
574                 <executions>
575                     <execution>
576                         <goals>
577                             <goal>repackage</goal>
578                         </goals>
579                     </execution>
580                 </executions>
581                 <configuration>
582                     <mainClass>${start-class}</mainClass>
583                     <executable>true</executable>
584                     <fork>true</fork>
585                     <!--
586                     Enable the line below to have remote debugging of your application on port 5005
587                     <jvmArguments>-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005</jvmArguments>
588                     -->
589                 </configuration>
590             </plugin>
591             <plugin>
592                 <groupId>com.spotify</groupId>
593                 <artifactId>dockerfile-maven-plugin</artifactId>
594                 <version>${dockerfile-maven-plugin.version}</version>
595                 <!--
596                 Uncomment the section below to build the docker image with mvn package and and push it with mvn deploy
597                 <executions>
598                     <execution>
599                     <id>default</id>
600                     <goals>
601                         <goal>build</goal>
602                         <goal>push</goal>
603                     </goals>
604                     </execution>
605                 </executions>
606                 -->
607                 <configuration>
608                     <repository>samserver</repository>
609                     <tag>latest</tag>
610                     <contextDirectory>${project.build.directory}</contextDirectory>
611                 </configuration>
612             </plugin>
613             <!-- jhipster-needle-maven-add-plugin -->
614         </plugins>
615         <pluginManagement>
616             <plugins>
617                 <!--
618                     This plugin's configuration is used to store Eclipse m2e settings only.
619                     It has no influence on the Maven build itself.
620                     Remove when the m2e plugin can correctly bind to Maven lifecycle
621                 -->
622                 <plugin>
623                     <groupId>org.eclipse.m2e</groupId>
624                     <artifactId>lifecycle-mapping</artifactId>
625                     <version>1.0.0</version>
626                     <configuration>
627                         <lifecycleMappingMetadata>
628                             <pluginExecutions>
629                                 <pluginExecution>
630                                     <pluginExecutionFilter>
631                                         <groupId>org.jacoco</groupId>
632                                         <artifactId>
633                                             jacoco-maven-plugin
634                                         </artifactId>
635                                         <versionRange>
636                                             ${jacoco-maven-plugin.version}
637                                         </versionRange>
638                                         <goals>
639                                             <goal>prepare-agent</goal>
640                                         </goals>
641                                     </pluginExecutionFilter>
642                                     <action>
643                                         <ignore/>
644                                     </action>
645                                 </pluginExecution>
646                             </pluginExecutions>
647                         </lifecycleMappingMetadata>
648                     </configuration>
649                 </plugin>
650             </plugins>
651         </pluginManagement>
652     </build>
653     <profiles>
654         <profile>
655             <id>no-liquibase</id>
656             <properties>
657                 <profile.no-liquibase>,no-liquibase</profile.no-liquibase>
658             </properties>
659         </profile>
660         <profile>
661             <id>swagger</id>
662             <properties>
663                 <profile.swagger>,swagger</profile.swagger>
664             </properties>
665         </profile>
666         <profile>
667             <id>dev</id>
668             <activation>
669                 <activeByDefault>true</activeByDefault>
670             </activation>
671             <dependencies>
672                 <dependency>
673                     <groupId>org.springframework.boot</groupId>
674                     <artifactId>spring-boot-starter-undertow</artifactId>
675                 </dependency>
676                 <dependency>
677                     <groupId>org.springframework.boot</groupId>
678                     <artifactId>spring-boot-devtools</artifactId>
679                     <optional>true</optional>
680                 </dependency>
681                 <dependency>
682                     <groupId>com.h2database</groupId>
683                     <artifactId>h2</artifactId>
684                 </dependency>
685             </dependencies>
686             <build>
687                 <plugins>
688                     <plugin>
689                         <groupId>org.apache.maven.plugins</groupId>
690                         <artifactId>maven-war-plugin</artifactId>
691                         <version>${maven-war-plugin.version}</version>
692                         <configuration>
693                             <failOnMissingWebXml>false</failOnMissingWebXml>
694                         </configuration>
695                     </plugin>
696                 </plugins>
697             </build>
698             <properties>
699                 <!-- default Spring profiles -->
700                 <spring.profiles.active>dev${profile.no-liquibase}</spring.profiles.active>
701             </properties>
702         </profile>
703         <profile>
704             <id>prod</id>
705             <dependencies>
706                 <dependency>
707                     <groupId>org.springframework.boot</groupId>
708                     <artifactId>spring-boot-starter-undertow</artifactId>
709                 </dependency>
710             </dependencies>
711             <build>
712                 <plugins>
713                     <plugin>
714                         <artifactId>maven-clean-plugin</artifactId>
715                         <version>${maven-clean-plugin.version}</version>
716                         <configuration>
717                             <filesets>
718                                 <fileset>
719                                     <directory>target/www/</directory>
720                                 </fileset>
721                             </filesets>
722                         </configuration>
723                     </plugin>
724                     <plugin>
725                         <groupId>org.apache.maven.plugins</groupId>
726                         <artifactId>maven-war-plugin</artifactId>
727                         <version>${maven-war-plugin.version}</version>
728                         <configuration>
729                             <failOnMissingWebXml>false</failOnMissingWebXml>
730                         </configuration>
731                     </plugin>
732                     <plugin>
733                         <groupId>org.springframework.boot</groupId>
734                         <artifactId>spring-boot-maven-plugin</artifactId>
735                         <version>${spring-boot.version}</version>
736                         <configuration>
737                             <mainClass>${start-class}</mainClass>
738                             <executable>true</executable>
739                         </configuration>
740                         <executions>
741                             <execution>
742                                 <goals>
743                                     <goal>build-info</goal>
744                                 </goals>
745                             </execution>
746                         </executions>
747                     </plugin>
748                     <plugin>
749                         <groupId>pl.project13.maven</groupId>
750                         <artifactId>git-commit-id-plugin</artifactId>
751                         <version>2.2.4</version>
752                             <executions>
753                                 <execution>
754                                     <goals>
755                                         <goal>revision</goal>
756                                     </goals>
757                                 </execution>
758                             </executions>
759                             <configuration>
760                                 <failOnNoGitDirectory>false</failOnNoGitDirectory>
761                                 <generateGitPropertiesFile>true</generateGitPropertiesFile>
762                                 <includeOnlyProperties>
763                                     <includeOnlyProperty>^git.commit.id.abbrev$</includeOnlyProperty>
764                                     <includeOnlyProperty>^git.commit.id.describe$</includeOnlyProperty>
765                                     <includeOnlyProperty>^git.branch$</includeOnlyProperty>
766                                 </includeOnlyProperties>
767                         </configuration>
768                     </plugin>
769                 </plugins>
770             </build>
771             <properties>
772                 <!-- default Spring profiles -->
773                 <spring.profiles.active>prod${profile.swagger}${profile.no-liquibase}</spring.profiles.active>
774             </properties>
775         </profile>
776         <profile>
777             <!--
778                 Profile for doing "continuous compilation" with the Scala Maven plugin.
779                 It allows automatic compilation of Java classes as soon as they are saved.
780                 To use it, run in 3 terminals:
781                 - './mvnw -Pcc scala:cc' for continuous compilation of your classes
782                 - './mvnw -Pcc' for hot reload of Spring boot
783                 - 'npm start/yarn start' for hot reload of the HTML/JavaScript asset
784                 Everything should hot reload automatically!
785             -->
786             <id>cc</id>
787             <dependencies>
788                 <dependency>
789                     <groupId>org.springframework.boot</groupId>
790                     <artifactId>spring-boot-starter-undertow</artifactId>
791                 </dependency>
792                 <dependency>
793                     <groupId>org.springframework.boot</groupId>
794                     <artifactId>spring-boot-devtools</artifactId>
795                     <optional>true</optional>
796                 </dependency>
797             </dependencies>
798             <build>
799                 <plugins>
800                     <plugin>
801                         <groupId>org.apache.maven.plugins</groupId>
802                         <artifactId>maven-war-plugin</artifactId>
803                         <version>${maven-war-plugin.version}</version>
804                         <configuration>
805                             <failOnMissingWebXml>false</failOnMissingWebXml>
806                             <warSourceDirectory>src/main/webapp/</warSourceDirectory>
807                         </configuration>
808                     </plugin>
809                     <plugin>
810                         <groupId>org.springframework.boot</groupId>
811                         <artifactId>spring-boot-maven-plugin</artifactId>
812                         <version>${spring-boot.version}</version>
813                         <configuration>
814                             <mainClass>${start-class}</mainClass>
815                             <executable>true</executable>
816                             <fork>true</fork>
817                             <addResources>true</addResources>
818                             <!--
819                             Enable the line below to have remote debugging of your application on port 5005
820                             <jvmArguments>-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005</jvmArguments>
821                             -->
822                         </configuration>
823                     </plugin>
824                     <plugin>
825                         <groupId>org.apache.maven.plugins</groupId>
826                         <artifactId>maven-compiler-plugin</artifactId>
827                         <version>${maven-compiler-plugin.version}</version>
828                         <executions>
829                             <execution>
830                                 <id>default-compile</id>
831                                 <phase>none</phase>
832                             </execution>
833                             <execution>
834                                 <id>default-testCompile</id>
835                                 <phase>none</phase>
836                             </execution>
837                         </executions>
838                     </plugin>
839                     <plugin>
840                         <groupId>net.alchim31.maven</groupId>
841                         <artifactId>scala-maven-plugin</artifactId>
842                         <version>${scala-maven-plugin.version}</version>
843                         <executions>
844                             <execution>
845                                 <id>compile</id>
846                                 <phase>compile</phase>
847                                 <goals>
848                                     <goal>add-source</goal>
849                                     <goal>compile</goal>
850                                 </goals>
851                             </execution>
852                             <execution>
853                                 <id>test-compile</id>
854                                 <phase>test-compile</phase>
855                                 <goals>
856                                     <goal>add-source</goal>
857                                     <goal>testCompile</goal>
858                                 </goals>
859                             </execution>
860                         </executions>
861                         <configuration>
862                             <recompileMode>incremental</recompileMode>
863                             <verbose>true</verbose>
864                             <scalaVersion>${scala.version}</scalaVersion>
865                         </configuration>
866                     </plugin>
867                 </plugins>
868             </build>
869             <properties>
870                 <!-- default Spring profiles -->
871                 <spring.profiles.active>dev,swagger</spring.profiles.active>
872             </properties>
873         </profile>
874         <profile>
875             <!--
876                 Profile for monitoring the application with Graphite.
877             -->
878             <id>graphite</id>
879             <dependencies>
880                 <dependency>
881                     <groupId>io.dropwizard.metrics</groupId>
882                     <artifactId>metrics-graphite</artifactId>
883                 </dependency>
884             </dependencies>
885         </profile>
886         <profile>
887             <!--
888                 Profile for monitoring the application with Prometheus.
889             -->
890             <id>prometheus</id>
891             <dependencies>
892                 <dependency>
893                     <groupId>io.prometheus</groupId>
894                     <artifactId>simpleclient</artifactId>
895                 </dependency>
896                 <dependency>
897                     <groupId>io.prometheus</groupId>
898                     <artifactId>simpleclient_servlet</artifactId>
899                 </dependency>
900                 <dependency>
901                     <groupId>io.prometheus</groupId>
902                     <artifactId>simpleclient_dropwizard</artifactId>
903                 </dependency>
904             </dependencies>
905         </profile>
906         <profile>
907             <!--
908                 Profile for tracing requests with Zipkin.
909             -->
910             <id>zipkin</id>
911             <dependencies>
912                 <dependency>
913                     <groupId>org.springframework.cloud</groupId>
914                     <artifactId>spring-cloud-starter-zipkin</artifactId>
915                 </dependency>
916             </dependencies>
917         </profile>
918         <profile>
919             <!--
920                 Profile for applying IDE-specific configuration.
921                 At the moment it only configures MapStruct, which you need when working
922                 with DTOs.
923             -->
924             <id>IDE</id>
925             <dependencies>
926                 <dependency>
927                     <groupId>org.mapstruct</groupId>
928                     <artifactId>mapstruct-processor</artifactId>
929                     <version>${mapstruct.version}</version>
930                 </dependency>
931             </dependencies>
932         </profile>
933         <!-- jhipster-needle-maven-add-profile -->
934     </profiles>
935 </project>