12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127
  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. <groupId>rocks.zipcode.io</groupId>
  5. <artifactId>fae-boo</artifactId>
  6. <version>0.0.1-SNAPSHOT</version>
  7. <packaging>war</packaging>
  8. <name>Fae Boo</name>
  9. <repositories>
  10. <!-- jhipster-needle-maven-repository -->
  11. </repositories>
  12. <!-- jhipster-needle-distribution-management -->
  13. <properties>
  14. <!-- Build properties -->
  15. <maven.version>3.0.0</maven.version>
  16. <java.version>1.8</java.version>
  17. <scala.version>2.12.6</scala.version>
  18. <node.version>v10.13.0</node.version>
  19. <npm.version>6.4.1</npm.version>
  20. <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  21. <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
  22. <project.testresult.directory>${project.build.directory}/test-results</project.testresult.directory>
  23. <maven.build.timestamp.format>yyyyMMddHHmmss</maven.build.timestamp.format>
  24. <maven.compiler.source>${java.version}</maven.compiler.source>
  25. <maven.compiler.target>${java.version}</maven.compiler.target>
  26. <argLine>-Djava.security.egd=file:/dev/./urandom -Xmx256m</argLine>
  27. <m2e.apt.activation>jdt_apt</m2e.apt.activation>
  28. <run.addResources>false</run.addResources>
  29. <!-- These remain empty unless the corresponding profile is active -->
  30. <profile.no-liquibase />
  31. <profile.swagger />
  32. <profile.tls />
  33. <!-- Dependency versions -->
  34. <jhipster-dependencies.version>2.0.28</jhipster-dependencies.version>
  35. <!-- The spring-boot version should match the one managed by
  36. https://mvnrepository.com/artifact/io.github.jhipster/jhipster-dependencies/${jhipster-dependencies.version} -->
  37. <spring-boot.version>2.0.6.RELEASE</spring-boot.version>
  38. <!-- The hibernate version should match the one managed by
  39. https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-dependencies/${spring-boot.version} -->
  40. <hibernate.version>5.2.17.Final</hibernate.version>
  41. <!-- The javassist version should match the one managed by
  42. https://mvnrepository.com/artifact/org.hibernate/hibernate-core/${hibernate.version} -->
  43. <javassist.version>3.22.0-GA</javassist.version>
  44. <!-- The liquibase version should match the one managed by
  45. https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-dependencies/${spring-boot.version} -->
  46. <liquibase.version>3.5.5</liquibase.version>
  47. <liquibase-hibernate5.version>3.6</liquibase-hibernate5.version>
  48. <validation-api.version>2.0.1.Final</validation-api.version>
  49. <mapstruct.version>1.2.0.Final</mapstruct.version>
  50. <!-- Plugin versions -->
  51. <maven-clean-plugin.version>3.1.0</maven-clean-plugin.version>
  52. <maven-compiler-plugin.version>3.8.0</maven-compiler-plugin.version>
  53. <maven-eclipse-plugin.version>2.10</maven-eclipse-plugin.version>
  54. <maven-enforcer-plugin.version>3.0.0-M2</maven-enforcer-plugin.version>
  55. <maven-resources-plugin.version>3.1.0</maven-resources-plugin.version>
  56. <maven-surefire-plugin.version>2.22.1</maven-surefire-plugin.version>
  57. <maven-war-plugin.version>3.2.2</maven-war-plugin.version>
  58. <jib-maven-plugin.version>0.9.11</jib-maven-plugin.version>
  59. <frontend-maven-plugin.version>1.6</frontend-maven-plugin.version>
  60. <jacoco-maven-plugin.version>0.8.2</jacoco-maven-plugin.version>
  61. <lifecycle-mapping.version>1.0.0</lifecycle-mapping.version>
  62. <scala-maven-plugin.version>3.4.2</scala-maven-plugin.version>
  63. <sonar-maven-plugin.version>3.5.0.1254</sonar-maven-plugin.version>
  64. <git-commit-id-plugin.version>2.2.5</git-commit-id-plugin.version>
  65. <!-- Sonar properties -->
  66. <sonar.host.url>http://localhost:9001</sonar.host.url>
  67. <sonar.exclusions>src/main/webapp/content/**/*.*, src/main/webapp/i18n/*.js, target/www/**/*.*</sonar.exclusions>
  68. <sonar.issue.ignore.multicriteria>S3437,S4502,S4684,UndocumentedApi,BoldAndItalicTagsCheck</sonar.issue.ignore.multicriteria>
  69. <!-- Rule https://sonarcloud.io/coding_rules?open=Web%3ABoldAndItalicTagsCheck&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/ -->
  70. <sonar.issue.ignore.multicriteria.BoldAndItalicTagsCheck.resourceKey>src/main/webapp/app/**/*.*</sonar.issue.ignore.multicriteria.BoldAndItalicTagsCheck.resourceKey>
  71. <sonar.issue.ignore.multicriteria.BoldAndItalicTagsCheck.ruleKey>Web:BoldAndItalicTagsCheck</sonar.issue.ignore.multicriteria.BoldAndItalicTagsCheck.ruleKey>
  72. <!-- Rule https://sonarcloud.io/coding_rules?open=squid%3AS3437&rule_key=squid%3AS3437 is ignored, as a JPA-managed field cannot be transient -->
  73. <sonar.issue.ignore.multicriteria.S3437.resourceKey>src/main/java/**/*</sonar.issue.ignore.multicriteria.S3437.resourceKey>
  74. <sonar.issue.ignore.multicriteria.S3437.ruleKey>squid:S3437</sonar.issue.ignore.multicriteria.S3437.ruleKey>
  75. <!-- Rule https://sonarcloud.io/coding_rules?open=squid%3AUndocumentedApi&rule_key=squid%3AUndocumentedApi is ignored, as we want to follow "clean code" guidelines and classes, methods and arguments names should be self-explanatory -->
  76. <sonar.issue.ignore.multicriteria.UndocumentedApi.resourceKey>src/main/java/**/*</sonar.issue.ignore.multicriteria.UndocumentedApi.resourceKey>
  77. <sonar.issue.ignore.multicriteria.UndocumentedApi.ruleKey>squid:UndocumentedApi</sonar.issue.ignore.multicriteria.UndocumentedApi.ruleKey>
  78. <!-- Rule https://sonarcloud.io/coding_rules?open=squid%3AS4502&rule_key=squid%3AS4502 is ignored, as for JWT tokens we are not subject to CSRF attack -->
  79. <sonar.issue.ignore.multicriteria.S4502.resourceKey>src/main/java/**/*</sonar.issue.ignore.multicriteria.S4502.resourceKey>
  80. <sonar.issue.ignore.multicriteria.S4502.ruleKey>squid:S4502</sonar.issue.ignore.multicriteria.S4502.ruleKey>
  81. <!-- Rule https://sonarcloud.io/coding_rules?open=squid%3AS4684&rule_key=squid%3AS4684 -->
  82. <sonar.issue.ignore.multicriteria.S4684.resourceKey>src/main/java/**/*</sonar.issue.ignore.multicriteria.S4684.resourceKey>
  83. <sonar.issue.ignore.multicriteria.S4684.ruleKey>squid:S4684</sonar.issue.ignore.multicriteria.S4684.ruleKey>
  84. <sonar.jacoco.reportPaths>${project.testresult.directory}/coverage/jacoco/jacoco.exec</sonar.jacoco.reportPaths>
  85. <sonar.java.codeCoveragePlugin>jacoco</sonar.java.codeCoveragePlugin>
  86. <sonar.testExecutionReportPaths>${project.testresult.directory}/jest/TESTS-results-sonar.xml</sonar.testExecutionReportPaths>
  87. <sonar.typescript.lcov.reportPaths>${project.testresult.directory}/lcov.info</sonar.typescript.lcov.reportPaths>
  88. <sonar.sources>${project.basedir}/src/main/</sonar.sources>
  89. <sonar.surefire.reportsPath>${project.testresult.directory}/surefire-reports</sonar.surefire.reportsPath>
  90. <sonar.tests>${project.basedir}/src/test/</sonar.tests>
  91. <!-- jhipster-needle-maven-property -->
  92. </properties>
  93. <dependencyManagement>
  94. <dependencies>
  95. <dependency>
  96. <groupId>io.github.jhipster</groupId>
  97. <artifactId>jhipster-dependencies</artifactId>
  98. <version>${jhipster-dependencies.version}</version>
  99. <type>pom</type>
  100. <scope>import</scope>
  101. </dependency>
  102. <!-- jhipster-needle-maven-add-dependency-management -->
  103. </dependencies>
  104. </dependencyManagement>
  105. <dependencies>
  106. <dependency>
  107. <groupId>io.github.jhipster</groupId>
  108. <artifactId>jhipster-framework</artifactId>
  109. </dependency>
  110. <dependency>
  111. <groupId>org.springframework.boot</groupId>
  112. <artifactId>spring-boot-starter-cache</artifactId>
  113. </dependency>
  114. <dependency>
  115. <groupId>io.dropwizard.metrics</groupId>
  116. <artifactId>metrics-core</artifactId>
  117. </dependency>
  118. <dependency>
  119. <groupId>io.dropwizard.metrics</groupId>
  120. <artifactId>metrics-annotation</artifactId>
  121. </dependency>
  122. <dependency>
  123. <groupId>io.dropwizard.metrics</groupId>
  124. <artifactId>metrics-json</artifactId>
  125. </dependency>
  126. <dependency>
  127. <groupId>io.prometheus</groupId>
  128. <artifactId>simpleclient</artifactId>
  129. </dependency>
  130. <dependency>
  131. <groupId>io.prometheus</groupId>
  132. <artifactId>simpleclient_dropwizard</artifactId>
  133. </dependency>
  134. <dependency>
  135. <groupId>io.prometheus</groupId>
  136. <artifactId>simpleclient_servlet</artifactId>
  137. </dependency>
  138. <dependency>
  139. <groupId>io.dropwizard.metrics</groupId>
  140. <artifactId>metrics-jvm</artifactId>
  141. </dependency>
  142. <dependency>
  143. <groupId>io.dropwizard.metrics</groupId>
  144. <artifactId>metrics-servlet</artifactId>
  145. </dependency>
  146. <dependency>
  147. <groupId>io.dropwizard.metrics</groupId>
  148. <artifactId>metrics-servlets</artifactId>
  149. </dependency>
  150. <dependency>
  151. <groupId>com.fasterxml.jackson.datatype</groupId>
  152. <artifactId>jackson-datatype-hibernate5</artifactId>
  153. </dependency>
  154. <dependency>
  155. <groupId>com.fasterxml.jackson.datatype</groupId>
  156. <artifactId>jackson-datatype-hppc</artifactId>
  157. </dependency>
  158. <dependency>
  159. <groupId>com.fasterxml.jackson.datatype</groupId>
  160. <artifactId>jackson-datatype-jsr310</artifactId>
  161. </dependency>
  162. <dependency>
  163. <groupId>com.fasterxml.jackson.module</groupId>
  164. <artifactId>jackson-module-afterburner</artifactId>
  165. </dependency>
  166. <dependency>
  167. <groupId>com.h2database</groupId>
  168. <artifactId>h2</artifactId>
  169. <scope>test</scope>
  170. </dependency>
  171. <dependency>
  172. <groupId>com.hazelcast</groupId>
  173. <artifactId>hazelcast</artifactId>
  174. </dependency>
  175. <dependency>
  176. <groupId>com.hazelcast</groupId>
  177. <artifactId>hazelcast-hibernate52</artifactId>
  178. </dependency>
  179. <dependency>
  180. <groupId>com.hazelcast</groupId>
  181. <artifactId>hazelcast-spring</artifactId>
  182. </dependency>
  183. <dependency>
  184. <groupId>com.jayway.jsonpath</groupId>
  185. <artifactId>json-path</artifactId>
  186. <scope>test</scope>
  187. <!-- parent POM declares this dependency in default (compile) scope -->
  188. </dependency>
  189. <dependency>
  190. <groupId>io.springfox</groupId>
  191. <artifactId>springfox-swagger2</artifactId>
  192. </dependency>
  193. <dependency>
  194. <groupId>io.springfox</groupId>
  195. <artifactId>springfox-bean-validators</artifactId>
  196. </dependency>
  197. <dependency>
  198. <groupId>com.mattbertolini</groupId>
  199. <artifactId>liquibase-slf4j</artifactId>
  200. </dependency>
  201. <dependency>
  202. <groupId>com.ryantenney.metrics</groupId>
  203. <artifactId>metrics-spring</artifactId>
  204. </dependency>
  205. <dependency>
  206. <groupId>com.zaxxer</groupId>
  207. <artifactId>HikariCP</artifactId>
  208. </dependency>
  209. <dependency>
  210. <groupId>commons-io</groupId>
  211. <artifactId>commons-io</artifactId>
  212. </dependency>
  213. <dependency>
  214. <groupId>org.apache.commons</groupId>
  215. <artifactId>commons-lang3</artifactId>
  216. </dependency>
  217. <dependency>
  218. <groupId>javax.cache</groupId>
  219. <artifactId>cache-api</artifactId>
  220. </dependency>
  221. <dependency>
  222. <groupId>org.assertj</groupId>
  223. <artifactId>assertj-core</artifactId>
  224. <scope>test</scope>
  225. </dependency>
  226. <dependency>
  227. <groupId>org.hibernate</groupId>
  228. <artifactId>hibernate-jpamodelgen</artifactId>
  229. <scope>provided</scope>
  230. </dependency>
  231. <dependency>
  232. <groupId>org.hibernate</groupId>
  233. <artifactId>hibernate-envers</artifactId>
  234. </dependency>
  235. <dependency>
  236. <groupId>org.hibernate.validator</groupId>
  237. <artifactId>hibernate-validator</artifactId>
  238. </dependency>
  239. <dependency>
  240. <groupId>org.liquibase</groupId>
  241. <artifactId>liquibase-core</artifactId>
  242. </dependency>
  243. <dependency>
  244. <groupId>net.logstash.logback</groupId>
  245. <artifactId>logstash-logback-encoder</artifactId>
  246. </dependency>
  247. <dependency>
  248. <groupId>org.postgresql</groupId>
  249. <artifactId>postgresql</artifactId>
  250. </dependency>
  251. <dependency>
  252. <groupId>org.mapstruct</groupId>
  253. <artifactId>mapstruct-jdk8</artifactId>
  254. </dependency>
  255. <dependency>
  256. <groupId>org.mapstruct</groupId>
  257. <artifactId>mapstruct-processor</artifactId>
  258. <scope>provided</scope>
  259. </dependency>
  260. <dependency>
  261. <groupId>org.springframework.boot</groupId>
  262. <artifactId>spring-boot-configuration-processor</artifactId>
  263. <scope>provided</scope>
  264. </dependency>
  265. <dependency>
  266. <groupId>org.springframework.boot</groupId>
  267. <artifactId>spring-boot-loader-tools</artifactId>
  268. </dependency>
  269. <dependency>
  270. <groupId>org.springframework.boot</groupId>
  271. <artifactId>spring-boot-starter-actuator</artifactId>
  272. </dependency>
  273. <dependency>
  274. <groupId>org.springframework.boot</groupId>
  275. <artifactId>spring-boot-starter-aop</artifactId>
  276. </dependency>
  277. <dependency>
  278. <groupId>org.springframework.boot</groupId>
  279. <artifactId>spring-boot-starter-data-jpa</artifactId>
  280. </dependency>
  281. <dependency>
  282. <groupId>org.springframework.boot</groupId>
  283. <artifactId>spring-boot-starter-logging</artifactId>
  284. </dependency>
  285. <dependency>
  286. <groupId>org.springframework.boot</groupId>
  287. <artifactId>spring-boot-starter-mail</artifactId>
  288. </dependency>
  289. <dependency>
  290. <groupId>org.springframework.boot</groupId>
  291. <artifactId>spring-boot-starter-security</artifactId>
  292. </dependency>
  293. <dependency>
  294. <groupId>org.springframework.boot</groupId>
  295. <artifactId>spring-boot-starter-thymeleaf</artifactId>
  296. </dependency>
  297. <dependency>
  298. <groupId>org.springframework.boot</groupId>
  299. <artifactId>spring-boot-starter-web</artifactId>
  300. </dependency>
  301. <dependency>
  302. <groupId>org.springframework.boot</groupId>
  303. <artifactId>spring-boot-starter-test</artifactId>
  304. <scope>test</scope>
  305. </dependency>
  306. <dependency>
  307. <groupId>org.springframework.boot</groupId>
  308. <artifactId>spring-boot-test</artifactId>
  309. <scope>test</scope>
  310. </dependency>
  311. <dependency>
  312. <groupId>org.springframework.security</groupId>
  313. <artifactId>spring-security-test</artifactId>
  314. <scope>test</scope>
  315. </dependency>
  316. <dependency>
  317. <groupId>org.zalando</groupId>
  318. <artifactId>problem-spring-web</artifactId>
  319. </dependency>
  320. <dependency>
  321. <groupId>io.jsonwebtoken</groupId>
  322. <artifactId>jjwt-api</artifactId>
  323. </dependency>
  324. <dependency>
  325. <groupId>io.jsonwebtoken</groupId>
  326. <artifactId>jjwt-impl</artifactId>
  327. <scope>runtime</scope>
  328. </dependency>
  329. <dependency>
  330. <groupId>io.jsonwebtoken</groupId>
  331. <artifactId>jjwt-jackson</artifactId>
  332. <scope>runtime</scope>
  333. </dependency>
  334. <!-- Spring Cloud -->
  335. <dependency>
  336. <groupId>org.springframework.cloud</groupId>
  337. <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
  338. </dependency>
  339. <dependency>
  340. <groupId>org.springframework.cloud</groupId>
  341. <artifactId>spring-cloud-starter-config</artifactId>
  342. </dependency>
  343. <dependency>
  344. <groupId>org.springframework.boot</groupId>
  345. <artifactId>spring-boot-starter-cloud-connectors</artifactId>
  346. </dependency>
  347. <!-- Security -->
  348. <dependency>
  349. <groupId>org.springframework.security</groupId>
  350. <artifactId>spring-security-data</artifactId>
  351. </dependency>
  352. <!-- jhipster-needle-maven-add-dependency -->
  353. </dependencies>
  354. <build>
  355. <defaultGoal>spring-boot:run</defaultGoal>
  356. <plugins>
  357. <plugin>
  358. <groupId>org.apache.maven.plugins</groupId>
  359. <artifactId>maven-compiler-plugin</artifactId>
  360. <configuration>
  361. <annotationProcessorPaths>
  362. <path>
  363. <groupId>org.mapstruct</groupId>
  364. <artifactId>mapstruct-processor</artifactId>
  365. <version>${mapstruct.version}</version>
  366. </path>
  367. <!-- For JPA static metamodel generation -->
  368. <path>
  369. <groupId>org.hibernate</groupId>
  370. <artifactId>hibernate-jpamodelgen</artifactId>
  371. <version>${hibernate.version}</version>
  372. </path>
  373. </annotationProcessorPaths>
  374. </configuration>
  375. </plugin>
  376. <plugin>
  377. <groupId>org.apache.maven.plugins</groupId>
  378. <artifactId>maven-eclipse-plugin</artifactId>
  379. </plugin>
  380. <plugin>
  381. <groupId>org.apache.maven.plugins</groupId>
  382. <artifactId>maven-enforcer-plugin</artifactId>
  383. </plugin>
  384. <plugin>
  385. <groupId>org.apache.maven.plugins</groupId>
  386. <artifactId>maven-resources-plugin</artifactId>
  387. </plugin>
  388. <plugin>
  389. <groupId>org.apache.maven.plugins</groupId>
  390. <artifactId>maven-surefire-plugin</artifactId>
  391. </plugin>
  392. <plugin>
  393. <groupId>org.jacoco</groupId>
  394. <artifactId>jacoco-maven-plugin</artifactId>
  395. </plugin>
  396. <plugin>
  397. <groupId>org.sonarsource.scanner.maven</groupId>
  398. <artifactId>sonar-maven-plugin</artifactId>
  399. </plugin>
  400. <plugin>
  401. <groupId>org.liquibase</groupId>
  402. <artifactId>liquibase-maven-plugin</artifactId>
  403. </plugin>
  404. <plugin>
  405. <groupId>org.springframework.boot</groupId>
  406. <artifactId>spring-boot-maven-plugin</artifactId>
  407. <executions>
  408. <execution>
  409. <goals>
  410. <goal>repackage</goal>
  411. </goals>
  412. </execution>
  413. </executions>
  414. <configuration>
  415. <mainClass>${start-class}</mainClass>
  416. <executable>true</executable>
  417. <fork>true</fork>
  418. <!--
  419. Enable the line below to have remote debugging of your application on port 5005
  420. <jvmArguments>-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005</jvmArguments>
  421. -->
  422. </configuration>
  423. </plugin>
  424. <plugin>
  425. <groupId>com.google.cloud.tools</groupId>
  426. <artifactId>jib-maven-plugin</artifactId>
  427. </plugin>
  428. <!-- jhipster-needle-maven-add-plugin -->
  429. </plugins>
  430. <pluginManagement>
  431. <plugins>
  432. <plugin>
  433. <groupId>org.apache.maven.plugins</groupId>
  434. <artifactId>maven-compiler-plugin</artifactId>
  435. <version>${maven-compiler-plugin.version}</version>
  436. </plugin>
  437. <plugin>
  438. <groupId>com.github.eirslett</groupId>
  439. <artifactId>frontend-maven-plugin</artifactId>
  440. <version>${frontend-maven-plugin.version}</version>
  441. </plugin>
  442. <plugin>
  443. <groupId>pl.project13.maven</groupId>
  444. <artifactId>git-commit-id-plugin</artifactId>
  445. <version>${git-commit-id-plugin.version}</version>
  446. <executions>
  447. <execution>
  448. <goals>
  449. <goal>revision</goal>
  450. </goals>
  451. </execution>
  452. </executions>
  453. <configuration>
  454. <failOnNoGitDirectory>false</failOnNoGitDirectory>
  455. <generateGitPropertiesFile>true</generateGitPropertiesFile>
  456. <includeOnlyProperties>
  457. <includeOnlyProperty>^git.commit.id.abbrev$</includeOnlyProperty>
  458. <includeOnlyProperty>^git.commit.id.describe$</includeOnlyProperty>
  459. <includeOnlyProperty>^git.branch$</includeOnlyProperty>
  460. </includeOnlyProperties>
  461. </configuration>
  462. </plugin>
  463. <plugin>
  464. <groupId>org.jacoco</groupId>
  465. <artifactId>jacoco-maven-plugin</artifactId>
  466. <version>${jacoco-maven-plugin.version}</version>
  467. <executions>
  468. <execution>
  469. <id>pre-unit-tests</id>
  470. <goals>
  471. <goal>prepare-agent</goal>
  472. </goals>
  473. <configuration>
  474. <!-- Sets the path to the file which contains the execution data. -->
  475. <destFile>${project.testresult.directory}/coverage/jacoco/jacoco.exec</destFile>
  476. </configuration>
  477. </execution>
  478. <!-- Ensures that the code coverage report for unit tests is created after unit tests have been run -->
  479. <execution>
  480. <id>post-unit-test</id>
  481. <phase>test</phase>
  482. <goals>
  483. <goal>report</goal>
  484. </goals>
  485. <configuration>
  486. <dataFile>${project.testresult.directory}/coverage/jacoco/jacoco.exec</dataFile>
  487. <outputDirectory>${project.testresult.directory}/coverage/jacoco</outputDirectory>
  488. </configuration>
  489. </execution>
  490. </executions>
  491. </plugin>
  492. <plugin>
  493. <groupId>com.google.cloud.tools</groupId>
  494. <artifactId>jib-maven-plugin</artifactId>
  495. <version>${jib-maven-plugin.version}</version>
  496. <configuration>
  497. <from>
  498. <image>openjdk:8-jre-alpine</image>
  499. </from>
  500. <to>
  501. <image>faeboo:latest</image>
  502. </to>
  503. <container>
  504. <entrypoint>
  505. <shell>sh</shell>
  506. <option>-c</option>
  507. <arg>chmod +x /entrypoint.sh &amp;&amp; sync &amp;&amp; /entrypoint.sh</arg>
  508. </entrypoint>
  509. <ports>
  510. <port>8080</port>
  511. <port>5701/udp</port>
  512. </ports>
  513. <environment>
  514. <SPRING_OUTPUT_ANSI_ENABLED>ALWAYS</SPRING_OUTPUT_ANSI_ENABLED>
  515. <JHIPSTER_SLEEP>0</JHIPSTER_SLEEP>
  516. </environment>
  517. <useCurrentTimestamp>true</useCurrentTimestamp>
  518. </container>
  519. </configuration>
  520. </plugin>
  521. <!--
  522. This plugin's configuration is used to store Eclipse m2e settings only.
  523. It has no influence on the Maven build itself.
  524. Remove when the m2e plugin can correctly bind to Maven lifecycle
  525. -->
  526. <plugin>
  527. <groupId>org.eclipse.m2e</groupId>
  528. <artifactId>lifecycle-mapping</artifactId>
  529. <version>${lifecycle-mapping.version}</version>
  530. <configuration>
  531. <lifecycleMappingMetadata>
  532. <pluginExecutions>
  533. <pluginExecution>
  534. <pluginExecutionFilter>
  535. <groupId>org.jacoco</groupId>
  536. <artifactId>
  537. jacoco-maven-plugin
  538. </artifactId>
  539. <versionRange>
  540. ${jacoco-maven-plugin.version}
  541. </versionRange>
  542. <goals>
  543. <goal>prepare-agent</goal>
  544. </goals>
  545. </pluginExecutionFilter>
  546. <action>
  547. <ignore/>
  548. </action>
  549. </pluginExecution>
  550. <pluginExecution>
  551. <pluginExecutionFilter>
  552. <groupId>com.github.eirslett</groupId>
  553. <artifactId>frontend-maven-plugin</artifactId>
  554. <versionRange>${frontend-maven-plugin.version}</versionRange>
  555. <goals>
  556. <goal>install-node-and-npm</goal>
  557. <goal>npm</goal>
  558. </goals>
  559. </pluginExecutionFilter>
  560. <action>
  561. <ignore/>
  562. </action>
  563. </pluginExecution>
  564. </pluginExecutions>
  565. </lifecycleMappingMetadata>
  566. </configuration>
  567. </plugin>
  568. <plugin>
  569. <groupId>org.liquibase</groupId>
  570. <artifactId>liquibase-maven-plugin</artifactId>
  571. <version>${liquibase.version}</version>
  572. <configuration>
  573. <changeLogFile>src/main/resources/config/liquibase/master.xml</changeLogFile>
  574. <diffChangeLogFile>src/main/resources/config/liquibase/changelog/${maven.build.timestamp}_changelog.xml</diffChangeLogFile>
  575. <driver></driver>
  576. <url></url>
  577. <defaultSchemaName></defaultSchemaName>
  578. <username>FaeBoo</username>
  579. <password></password>
  580. <referenceUrl>hibernate:spring:rocks.zipcode.io.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>
  581. <verbose>true</verbose>
  582. <logging>debug</logging>
  583. </configuration>
  584. <dependencies>
  585. <dependency>
  586. <groupId>org.javassist</groupId>
  587. <artifactId>javassist</artifactId>
  588. <version>${javassist.version}</version>
  589. </dependency>
  590. <dependency>
  591. <groupId>org.liquibase.ext</groupId>
  592. <artifactId>liquibase-hibernate5</artifactId>
  593. <version>${liquibase-hibernate5.version}</version>
  594. </dependency>
  595. <dependency>
  596. <groupId>org.springframework.boot</groupId>
  597. <artifactId>spring-boot-starter-data-jpa</artifactId>
  598. <version>${spring-boot.version}</version>
  599. </dependency>
  600. <dependency>
  601. <groupId>javax.validation</groupId>
  602. <artifactId>validation-api</artifactId>
  603. <version>${validation-api.version}</version>
  604. </dependency>
  605. </dependencies>
  606. </plugin>
  607. <plugin>
  608. <artifactId>maven-clean-plugin</artifactId>
  609. <version>${maven-clean-plugin.version}</version>
  610. </plugin>
  611. <plugin>
  612. <groupId>org.apache.maven.plugins</groupId>
  613. <artifactId>maven-eclipse-plugin</artifactId>
  614. <version>${maven-eclipse-plugin.version}</version>
  615. <configuration>
  616. <downloadSources>true</downloadSources>
  617. <downloadJavadocs>true</downloadJavadocs>
  618. </configuration>
  619. </plugin>
  620. <plugin>
  621. <groupId>org.apache.maven.plugins</groupId>
  622. <artifactId>maven-enforcer-plugin</artifactId>
  623. <version>${maven-enforcer-plugin.version}</version>
  624. <executions>
  625. <execution>
  626. <id>enforce-versions</id>
  627. <goals>
  628. <goal>enforce</goal>
  629. </goals>
  630. </execution>
  631. </executions>
  632. <configuration>
  633. <rules>
  634. <requireMavenVersion>
  635. <message>You are running an older version of Maven. JHipster requires at least Maven ${maven.version}</message>
  636. <version>[${maven.version},)</version>
  637. </requireMavenVersion>
  638. <requireJavaVersion>
  639. <!-- Until JHipster supports JDK 9 -->
  640. <message>You are running an incompatible version of Java. JHipster requires JDK ${java.version}</message>
  641. <version>[1.8,1.9)</version>
  642. </requireJavaVersion>
  643. </rules>
  644. </configuration>
  645. </plugin>
  646. <plugin>
  647. <groupId>org.apache.maven.plugins</groupId>
  648. <artifactId>maven-resources-plugin</artifactId>
  649. <version>${maven-resources-plugin.version}</version>
  650. <executions>
  651. <execution>
  652. <id>default-resources</id>
  653. <phase>validate</phase>
  654. <goals>
  655. <goal>copy-resources</goal>
  656. </goals>
  657. <configuration>
  658. <outputDirectory>target/classes</outputDirectory>
  659. <useDefaultDelimiters>false</useDefaultDelimiters>
  660. <delimiters>
  661. <delimiter>#</delimiter>
  662. </delimiters>
  663. <resources>
  664. <resource>
  665. <directory>src/main/resources/</directory>
  666. <filtering>true</filtering>
  667. <includes>
  668. <include>config/*.yml</include>
  669. </includes>
  670. </resource>
  671. <resource>
  672. <directory>src/main/resources/</directory>
  673. <filtering>false</filtering>
  674. <excludes>
  675. <exclude>config/*.yml</exclude>
  676. </excludes>
  677. </resource>
  678. </resources>
  679. </configuration>
  680. </execution>
  681. <execution>
  682. <id>docker-resources</id>
  683. <phase>verify</phase>
  684. <goals>
  685. <goal>copy-resources</goal>
  686. </goals>
  687. <configuration>
  688. <outputDirectory>target/classes/static/</outputDirectory>
  689. <resources>
  690. <resource>
  691. <directory>target/www</directory>
  692. <filtering>false</filtering>
  693. </resource>
  694. </resources>
  695. </configuration>
  696. </execution>
  697. </executions>
  698. </plugin>
  699. <plugin>
  700. <groupId>org.apache.maven.plugins</groupId>
  701. <artifactId>maven-surefire-plugin</artifactId>
  702. <version>${maven-surefire-plugin.version}</version>
  703. <configuration>
  704. <!-- Force alphabetical order to have a reproducible build -->
  705. <runOrder>alphabetical</runOrder>
  706. <!-- Fixes a bug which will be solved in next version after 2.22.1 then this can be removed -->
  707. <!-- see: https://issues.apache.org/jira/browse/SUREFIRE-1588 -->
  708. <useSystemClassLoader>false</useSystemClassLoader>
  709. </configuration>
  710. </plugin>
  711. <plugin>
  712. <groupId>org.apache.maven.plugins</groupId>
  713. <artifactId>maven-war-plugin</artifactId>
  714. <version>${maven-war-plugin.version}</version>
  715. </plugin>
  716. <plugin>
  717. <groupId>net.alchim31.maven</groupId>
  718. <artifactId>scala-maven-plugin</artifactId>
  719. <version>${scala-maven-plugin.version}</version>
  720. <executions>
  721. <execution>
  722. <id>compile</id>
  723. <phase>compile</phase>
  724. <goals>
  725. <goal>add-source</goal>
  726. <goal>compile</goal>
  727. </goals>
  728. </execution>
  729. <execution>
  730. <id>test-compile</id>
  731. <phase>test-compile</phase>
  732. <goals>
  733. <goal>add-source</goal>
  734. <goal>testCompile</goal>
  735. </goals>
  736. </execution>
  737. </executions>
  738. <configuration>
  739. <recompileMode>incremental</recompileMode>
  740. <verbose>true</verbose>
  741. <scalaVersion>${scala.version}</scalaVersion>
  742. </configuration>
  743. </plugin>
  744. <plugin>
  745. <groupId>org.sonarsource.scanner.maven</groupId>
  746. <artifactId>sonar-maven-plugin</artifactId>
  747. <version>${sonar-maven-plugin.version}</version>
  748. </plugin>
  749. <plugin>
  750. <groupId>org.springframework.boot</groupId>
  751. <artifactId>spring-boot-maven-plugin</artifactId>
  752. <version>${spring-boot.version}</version>
  753. </plugin>
  754. </plugins>
  755. </pluginManagement>
  756. </build>
  757. <profiles>
  758. <profile>
  759. <id>no-liquibase</id>
  760. <properties>
  761. <profile.no-liquibase>,no-liquibase</profile.no-liquibase>
  762. </properties>
  763. </profile>
  764. <profile>
  765. <id>swagger</id>
  766. <properties>
  767. <profile.swagger>,swagger</profile.swagger>
  768. </properties>
  769. </profile>
  770. <profile>
  771. <id>tls</id>
  772. <properties>
  773. <profile.tls>,tls</profile.tls>
  774. </properties>
  775. </profile>
  776. <profile>
  777. <id>webpack</id>
  778. <activation>
  779. <file>
  780. <missing>${basedir}/target/www/app/main.bundle.js</missing>
  781. </file>
  782. </activation>
  783. <dependencies>
  784. <dependency>
  785. <groupId>org.springframework.boot</groupId>
  786. <artifactId>spring-boot-starter-undertow</artifactId>
  787. </dependency>
  788. <dependency>
  789. <groupId>org.springframework.boot</groupId>
  790. <artifactId>spring-boot-devtools</artifactId>
  791. <optional>true</optional>
  792. </dependency>
  793. <dependency>
  794. <groupId>com.h2database</groupId>
  795. <artifactId>h2</artifactId>
  796. </dependency>
  797. </dependencies>
  798. <build>
  799. <plugins>
  800. <plugin>
  801. <groupId>com.github.eirslett</groupId>
  802. <artifactId>frontend-maven-plugin</artifactId>
  803. <executions>
  804. <execution>
  805. <id>install node and npm</id>
  806. <goals>
  807. <goal>install-node-and-npm</goal>
  808. </goals>
  809. <configuration>
  810. <nodeVersion>${node.version}</nodeVersion>
  811. <npmVersion>${npm.version}</npmVersion>
  812. </configuration>
  813. </execution>
  814. <execution>
  815. <id>npm install</id>
  816. <goals>
  817. <goal>npm</goal>
  818. </goals>
  819. </execution>
  820. <execution>
  821. <id>webpack build dev</id>
  822. <goals>
  823. <goal>npm</goal>
  824. </goals>
  825. <phase>generate-resources</phase>
  826. <configuration>
  827. <arguments>run webpack:build</arguments>
  828. <npmInheritsProxyConfigFromMaven>false</npmInheritsProxyConfigFromMaven>
  829. </configuration>
  830. </execution>
  831. </executions>
  832. </plugin>
  833. <plugin>
  834. <groupId>org.apache.maven.plugins</groupId>
  835. <artifactId>maven-war-plugin</artifactId>
  836. <configuration>
  837. <failOnMissingWebXml>false</failOnMissingWebXml>
  838. <warSourceDirectory>target/www/</warSourceDirectory>
  839. <webResources>
  840. <resource>
  841. <directory>src/main/webapp</directory>
  842. <includes>
  843. <include>WEB-INF/**</include>
  844. </includes>
  845. </resource>
  846. </webResources>
  847. </configuration>
  848. </plugin>
  849. </plugins>
  850. </build>
  851. <properties>
  852. <!-- default Spring profiles -->
  853. <spring.profiles.active>dev${profile.no-liquibase}</spring.profiles.active>
  854. </properties>
  855. </profile>
  856. <profile>
  857. <id>dev</id>
  858. <activation>
  859. <activeByDefault>true</activeByDefault>
  860. </activation>
  861. <dependencies>
  862. <dependency>
  863. <groupId>org.springframework.boot</groupId>
  864. <artifactId>spring-boot-starter-undertow</artifactId>
  865. </dependency>
  866. <dependency>
  867. <groupId>org.springframework.boot</groupId>
  868. <artifactId>spring-boot-devtools</artifactId>
  869. <optional>true</optional>
  870. </dependency>
  871. <dependency>
  872. <groupId>com.h2database</groupId>
  873. <artifactId>h2</artifactId>
  874. </dependency>
  875. </dependencies>
  876. <build>
  877. <plugins>
  878. <plugin>
  879. <groupId>org.apache.maven.plugins</groupId>
  880. <artifactId>maven-war-plugin</artifactId>
  881. <configuration>
  882. <failOnMissingWebXml>false</failOnMissingWebXml>
  883. <warSourceDirectory>target/www/</warSourceDirectory>
  884. <webResources>
  885. <resource>
  886. <directory>src/main/webapp</directory>
  887. <includes>
  888. <include>WEB-INF/**</include>
  889. </includes>
  890. </resource>
  891. </webResources>
  892. </configuration>
  893. </plugin>
  894. </plugins>
  895. </build>
  896. <properties>
  897. <!-- default Spring profiles -->
  898. <spring.profiles.active>dev${profile.tls}${profile.no-liquibase}</spring.profiles.active>
  899. </properties>
  900. </profile>
  901. <profile>
  902. <id>prod</id>
  903. <dependencies>
  904. <dependency>
  905. <groupId>org.springframework.boot</groupId>
  906. <artifactId>spring-boot-starter-undertow</artifactId>
  907. </dependency>
  908. </dependencies>
  909. <build>
  910. <plugins>
  911. <plugin>
  912. <artifactId>maven-clean-plugin</artifactId>
  913. <configuration>
  914. <filesets>
  915. <fileset>
  916. <directory>target/www/</directory>
  917. </fileset>
  918. </filesets>
  919. </configuration>
  920. </plugin>
  921. <plugin>
  922. <groupId>org.apache.maven.plugins</groupId>
  923. <artifactId>maven-war-plugin</artifactId>
  924. <configuration>
  925. <failOnMissingWebXml>false</failOnMissingWebXml>
  926. <warSourceDirectory>target/www/</warSourceDirectory>
  927. <webResources>
  928. <resource>
  929. <directory>src/main/webapp</directory>
  930. <includes>
  931. <include>WEB-INF/**</include>
  932. </includes>
  933. </resource>
  934. </webResources>
  935. </configuration>
  936. </plugin>
  937. <plugin>
  938. <groupId>org.springframework.boot</groupId>
  939. <artifactId>spring-boot-maven-plugin</artifactId>
  940. <configuration>
  941. <mainClass>${start-class}</mainClass>
  942. <executable>true</executable>
  943. </configuration>
  944. <executions>
  945. <execution>
  946. <goals>
  947. <goal>build-info</goal>
  948. </goals>
  949. </execution>
  950. </executions>
  951. </plugin>
  952. <plugin>
  953. <groupId>com.github.eirslett</groupId>
  954. <artifactId>frontend-maven-plugin</artifactId>
  955. <executions>
  956. <execution>
  957. <id>install node and npm</id>
  958. <goals>
  959. <goal>install-node-and-npm</goal>
  960. </goals>
  961. <configuration>
  962. <nodeVersion>${node.version}</nodeVersion>
  963. <npmVersion>${npm.version}</npmVersion>
  964. </configuration>
  965. </execution>
  966. <execution>
  967. <id>npm install</id>
  968. <goals>
  969. <goal>npm</goal>
  970. </goals>
  971. <configuration>
  972. <arguments>install</arguments>
  973. </configuration>
  974. </execution>
  975. <execution>
  976. <id>webpack build test</id>
  977. <goals>
  978. <goal>npm</goal>
  979. </goals>
  980. <phase>test</phase>
  981. <configuration>
  982. <arguments>run webpack:test</arguments>
  983. <npmInheritsProxyConfigFromMaven>false</npmInheritsProxyConfigFromMaven>
  984. </configuration>
  985. </execution>
  986. <execution>
  987. <id>webpack build prod</id>
  988. <goals>
  989. <goal>npm</goal>
  990. </goals>
  991. <phase>generate-resources</phase>
  992. <configuration>
  993. <arguments>run webpack:prod</arguments>
  994. <npmInheritsProxyConfigFromMaven>false</npmInheritsProxyConfigFromMaven>
  995. </configuration>
  996. </execution>
  997. </executions>
  998. </plugin>
  999. <plugin>
  1000. <groupId>pl.project13.maven</groupId>
  1001. <artifactId>git-commit-id-plugin</artifactId>
  1002. </plugin>
  1003. </plugins>
  1004. </build>
  1005. <properties>
  1006. <!-- default Spring profiles -->
  1007. <spring.profiles.active>prod${profile.swagger}${profile.no-liquibase}</spring.profiles.active>
  1008. </properties>
  1009. </profile>
  1010. <profile>
  1011. <!--
  1012. Profile for doing "continuous compilation" with the Scala Maven plugin.
  1013. It allows automatic compilation of Java classes as soon as they are saved.
  1014. To use it, run in 3 terminals:
  1015. - './mvnw -Pcc scala:cc' for continuous compilation of your classes
  1016. - './mvnw -Pcc -Pdev' for hot reload of Spring boot
  1017. - 'npm start/yarn start' for hot reload of the HTML/JavaScript asset
  1018. Everything should hot reload automatically!
  1019. -->
  1020. <id>cc</id>
  1021. <dependencies>
  1022. <dependency>
  1023. <groupId>org.springframework.boot</groupId>
  1024. <artifactId>spring-boot-starter-undertow</artifactId>
  1025. </dependency>
  1026. <dependency>
  1027. <groupId>org.springframework.boot</groupId>
  1028. <artifactId>spring-boot-devtools</artifactId>
  1029. <optional>true</optional>
  1030. </dependency>
  1031. </dependencies>
  1032. <build>
  1033. <plugins>
  1034. <plugin>
  1035. <groupId>org.apache.maven.plugins</groupId>
  1036. <artifactId>maven-war-plugin</artifactId>
  1037. <configuration>
  1038. <failOnMissingWebXml>false</failOnMissingWebXml>
  1039. <warSourceDirectory>src/main/webapp/</warSourceDirectory>
  1040. </configuration>
  1041. </plugin>
  1042. <plugin>
  1043. <groupId>org.springframework.boot</groupId>
  1044. <artifactId>spring-boot-maven-plugin</artifactId>
  1045. <configuration>
  1046. <mainClass>${start-class}</mainClass>
  1047. <executable>true</executable>
  1048. <fork>true</fork>
  1049. <addResources>true</addResources>
  1050. <!--
  1051. Enable the line below to have remote debugging of your application on port 5005
  1052. <jvmArguments>-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005</jvmArguments>
  1053. -->
  1054. </configuration>
  1055. </plugin>
  1056. <plugin>
  1057. <groupId>org.apache.maven.plugins</groupId>
  1058. <artifactId>maven-compiler-plugin</artifactId>
  1059. <executions>
  1060. <execution>
  1061. <id>default-compile</id>
  1062. <phase>none</phase>
  1063. </execution>
  1064. <execution>
  1065. <id>default-testCompile</id>
  1066. <phase>none</phase>
  1067. </execution>
  1068. </executions>
  1069. </plugin>
  1070. <plugin>
  1071. <groupId>net.alchim31.maven</groupId>
  1072. <artifactId>scala-maven-plugin</artifactId>
  1073. </plugin>
  1074. </plugins>
  1075. </build>
  1076. <properties>
  1077. <!-- default Spring profiles -->
  1078. <spring.profiles.active>dev,swagger</spring.profiles.active>
  1079. </properties>
  1080. </profile>
  1081. <profile>
  1082. <!--
  1083. Profile for tracing requests with Zipkin.
  1084. -->
  1085. <id>zipkin</id>
  1086. <dependencies>
  1087. <dependency>
  1088. <groupId>org.springframework.cloud</groupId>
  1089. <artifactId>spring-cloud-starter-zipkin</artifactId>
  1090. </dependency>
  1091. </dependencies>
  1092. </profile>
  1093. <profile>
  1094. <!--
  1095. Profile for applying IDE-specific configuration.
  1096. At the moment it configures MapStruct and Hibernate JPA Metamodel Generator, which you need when working
  1097. with DTOs and entity filtering.
  1098. -->
  1099. <id>IDE</id>
  1100. <dependencies>
  1101. <dependency>
  1102. <groupId>org.mapstruct</groupId>
  1103. <artifactId>mapstruct-processor</artifactId>
  1104. </dependency>
  1105. <dependency>
  1106. <groupId>org.hibernate</groupId>
  1107. <artifactId>hibernate-jpamodelgen</artifactId>
  1108. </dependency>
  1109. </dependencies>
  1110. </profile>
  1111. <!-- jhipster-needle-maven-add-profile -->
  1112. </profiles>
  1113. </project>