blob: a5f0fde473fbe3863b08442e91177976375270b2 [file] [log] [blame]
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +01001<?xml version="1.0"?>
2<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
4
5 <modelVersion>4.0.0</modelVersion>
6
7 <groupId>eu.mulk</groupId>
8 <artifactId>mulkcms2</artifactId>
9 <version>0.1.0-SNAPSHOT</version>
10
11 <properties>
12 <maven.compiler.parameters>true</maven.compiler.parameters>
13 <maven.compiler.source>11</maven.compiler.source>
14 <maven.compiler.target>11</maven.compiler.target>
15
Matthias Andreas Benkard7e71d1c2020-04-16 17:07:59 +020016 <scala.version>2.13.3</scala.version>
17
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +010018 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
19 <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
20
Matthias Andreas Benkard3bbba8d2020-06-13 15:40:15 +020021 <antrun-plugin.version>3.0.0</antrun-plugin.version>
Matthias Andreas Benkard55243c82020-04-13 20:49:15 +020022 <compiler-plugin.version>3.8.1</compiler-plugin.version>
Matthias Andreas Benkard43d59d32020-08-16 10:57:23 +020023 <quarkus.version>1.7.0.Final</quarkus.version>
Matthias Andreas Benkard813e5972020-06-14 19:27:42 +020024 <resources-plugin.version>3.1.0</resources-plugin.version>
Matthias Andreas Benkard3f986ef2020-08-22 13:28:33 +020025 <scalafmt.version>2.6.3</scalafmt.version>
26 <spotless-plugin.version>2.0.3</spotless-plugin.version>
Matthias Andreas Benkard7e71d1c2020-04-16 17:07:59 +020027 <scala-plugin.version>4.4.0</scala-plugin.version>
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +010028
Matthias Andreas Benkard2710bf32020-01-25 10:48:07 +010029 <!-- <quarkus.platform.artifact-id>quarkus-universe-bom</quarkus.platform.artifact-id> -->
30 <quarkus.platform.artifact-id>quarkus-bom</quarkus.platform.artifact-id>
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +010031 <quarkus.platform.group-id>io.quarkus</quarkus.platform.group-id>
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +010032
Matthias Andreas Benkard1e7674c2020-04-18 20:28:51 +020033 <basic-annotations.version>0.2.0</basic-annotations.version>
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +010034 <findbugs-jsr305.version>3.0.2</findbugs-jsr305.version>
Matthias Andreas Benkard6b7e9412020-06-22 18:13:16 +020035 <flexmark.version>0.62.2</flexmark.version>
Matthias Andreas Benkarda0392372020-06-13 15:46:39 +020036 <google.java.format.version>1.8</google.java.format.version>
Matthias Andreas Benkard43d59d32020-08-16 10:57:23 +020037 <hibernate.version>5.4.20.Final</hibernate.version>
38 <hibernate-types.version>2.9.13</hibernate-types.version>
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +010039 <jakarta-jacc-api.version>1.6.1</jakarta-jacc-api.version>
Matthias Andreas Benkardaa196aa2020-07-18 12:36:57 +020040 <jna.version>5.6.0</jna.version>
Matthias Andreas Benkard551f50c2020-03-15 12:34:07 +010041 <jsoup.version>1.13.1</jsoup.version>
Matthias Andreas Benkard7e71d1c2020-04-16 17:07:59 +020042 <kotlin-annotations.version>1.4.0</kotlin-annotations.version>
Matthias Andreas Benkard80fc4312020-06-13 16:59:04 +020043 <liquibase.version>3.9.0</liquibase.version>
44 <postgresql.version>42.2.14</postgresql.version>
Matthias Andreas Benkardaa196aa2020-07-18 12:36:57 +020045 <rome.version>1.15.0</rome.version>
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +010046 </properties>
47
48 <dependencyManagement>
49 <dependencies>
50
51 <dependency>
52 <groupId>${quarkus.platform.group-id}</groupId>
53 <artifactId>${quarkus.platform.artifact-id}</artifactId>
Matthias Andreas Benkard43d59d32020-08-16 10:57:23 +020054 <version>${quarkus.version}</version>
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +010055 <type>pom</type>
56 <scope>import</scope>
57 </dependency>
58
59 <!-- Hibernate PostgreSQL Extra Types -->
60 <dependency>
61 <groupId>com.vladmihalcea</groupId>
62 <artifactId>hibernate-types-52</artifactId>
63 <version>${hibernate-types.version}</version>
64 </dependency>
65
Matthias Andreas Benkard1e7674c2020-04-18 20:28:51 +020066 <!-- Annotations -->
67 <dependency>
68 <groupId>pl.tlinkowski.annotation</groupId>
69 <artifactId>pl.tlinkowski.annotation.basic</artifactId>
70 <version>${basic-annotations.version}</version>
71 <scope>provided</scope>
72 </dependency>
73
Matthias Andreas Benkard4e29a242020-01-25 05:38:27 +010074 <!-- Jsoup -->
75 <dependency>
76 <groupId>org.jsoup</groupId>
77 <artifactId>jsoup</artifactId>
78 <version>${jsoup.version}</version>
79 </dependency>
80
Matthias Andreas Benkard424e16e2020-02-09 18:29:56 +010081 <!-- FlexMark -->
82 <dependency>
83 <groupId>com.vladsch.flexmark</groupId>
84 <artifactId>flexmark-all</artifactId>
85 <version>${flexmark.version}</version>
86 </dependency>
87
Matthias Andreas Benkard981f2792020-02-16 14:54:54 +010088 <!-- Rome -->
89 <dependency>
90 <groupId>com.rometools</groupId>
91 <artifactId>rome</artifactId>
92 <version>${rome.version}</version>
93 </dependency>
94
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +010095 <!-- JNA -->
96 <dependency>
97 <groupId>net.java.dev.jna</groupId>
98 <artifactId>jna</artifactId>
99 <version>${jna.version}</version>
100 </dependency>
101
102 <!-- JACC -->
103 <dependency>
104 <groupId>jakarta.security.jacc</groupId>
105 <artifactId>jakarta.security.jacc-api</artifactId>
106 <version>${jakarta-jacc-api.version}</version>
107 </dependency>
108
Matthias Andreas Benkard2a1383f2020-02-01 23:53:17 +0100109 <!-- JOSE for Java -->
110 <dependency>
111 <groupId>org.bitbucket.b_c</groupId>
112 <artifactId>jose4j</artifactId>
113 <version>0.7.0</version>
114 </dependency>
115
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +0100116 <!-- Annotations -->
117 <dependency>
118 <groupId>com.google.code.findbugs</groupId>
119 <artifactId>jsr305</artifactId>
120 <version>${findbugs-jsr305.version}</version>
121 <scope>provided</scope>
122 </dependency>
123
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +0100124 </dependencies>
125 </dependencyManagement>
126
127 <dependencies>
128
129 <dependency>
Matthias Andreas Benkard7e71d1c2020-04-16 17:07:59 +0200130 <groupId>org.scala-lang</groupId>
131 <artifactId>scala-library</artifactId>
132 <version>${scala.version}</version>
133 </dependency>
134 <dependency>
135 <groupId>org.scala-lang</groupId>
136 <artifactId>scala-reflect</artifactId>
137 <version>${scala.version}</version>
138 </dependency>
Matthias Andreas Benkardb0c0e1e2020-08-22 18:40:46 +0200139 <dependency>
140 <groupId>org.scala-lang</groupId>
141 <artifactId>scala-compiler</artifactId>
142 <version>${scala.version}</version>
143 </dependency>
Matthias Andreas Benkard7e71d1c2020-04-16 17:07:59 +0200144
145 <dependency>
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +0100146 <groupId>io.quarkus</groupId>
Matthias Andreas Benkard4cb34f42020-01-24 14:44:28 +0100147 <artifactId>quarkus-agroal</artifactId>
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +0100148 </dependency>
149 <dependency>
150 <groupId>io.quarkus</groupId>
Matthias Andreas Benkard7e71d1c2020-04-16 17:07:59 +0200151 <artifactId>quarkus-scala</artifactId>
152 </dependency>
153 <dependency>
154 <groupId>io.quarkus</groupId>
Matthias Andreas Benkardc27d1cb2020-01-26 11:11:24 +0100155 <artifactId>quarkus-elytron-security-properties-file</artifactId>
156 </dependency>
157 <dependency>
158 <groupId>io.quarkus</groupId>
Matthias Andreas Benkard4cb34f42020-01-24 14:44:28 +0100159 <artifactId>quarkus-hibernate-orm-panache</artifactId>
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +0100160 </dependency>
161 <dependency>
162 <groupId>io.quarkus</groupId>
163 <artifactId>quarkus-hibernate-validator</artifactId>
164 </dependency>
165 <dependency>
166 <groupId>io.quarkus</groupId>
Matthias Andreas Benkard4cb34f42020-01-24 14:44:28 +0100167 <artifactId>quarkus-jdbc-postgresql</artifactId>
168 </dependency>
Matthias Andreas Benkard4cb34f42020-01-24 14:44:28 +0100169 <dependency>
170 <groupId>io.quarkus</groupId>
Matthias Andreas Benkard80fc4312020-06-13 16:59:04 +0200171 <artifactId>quarkus-liquibase</artifactId>
172 </dependency>
173 <dependency>
174 <groupId>io.quarkus</groupId>
Matthias Andreas Benkard4cb34f42020-01-24 14:44:28 +0100175 <artifactId>quarkus-oidc</artifactId>
176 </dependency>
177 <dependency>
178 <groupId>io.quarkus</groupId>
179 <artifactId>quarkus-resteasy</artifactId>
180 </dependency>
181 <dependency>
182 <groupId>io.quarkus</groupId>
183 <artifactId>quarkus-resteasy-jsonb</artifactId>
184 </dependency>
185 <dependency>
186 <groupId>io.quarkus</groupId>
187 <artifactId>quarkus-resteasy-qute</artifactId>
188 </dependency>
Matthias Andreas Benkard2a1383f2020-02-01 23:53:17 +0100189 <dependency>
190 <groupId>io.quarkus</groupId>
191 <artifactId>quarkus-smallrye-jwt</artifactId>
192 </dependency>
Matthias Andreas Benkarddb48be42020-04-17 21:44:59 +0200193 <dependency>
194 <groupId>io.quarkus</groupId>
195 <artifactId>quarkus-container-image-jib</artifactId>
196 </dependency>
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +0100197
198 <!-- JNA -->
199 <dependency>
200 <groupId>net.java.dev.jna</groupId>
201 <artifactId>jna</artifactId>
202 </dependency>
203
204 <!-- JACC -->
205 <dependency>
206 <groupId>jakarta.security.jacc</groupId>
207 <artifactId>jakarta.security.jacc-api</artifactId>
208 </dependency>
209
210 <!-- Hibernate PostgreSQL Extra Types -->
211 <dependency>
212 <groupId>com.vladmihalcea</groupId>
213 <artifactId>hibernate-types-52</artifactId>
214 </dependency>
215
Matthias Andreas Benkard1e7674c2020-04-18 20:28:51 +0200216 <!-- Annotations -->
217 <dependency>
218 <groupId>pl.tlinkowski.annotation</groupId>
219 <artifactId>pl.tlinkowski.annotation.basic</artifactId>
220 <scope>provided</scope>
221 </dependency>
222
Matthias Andreas Benkard4e29a242020-01-25 05:38:27 +0100223 <!-- Jsoup -->
224 <dependency>
225 <groupId>org.jsoup</groupId>
226 <artifactId>jsoup</artifactId>
227 </dependency>
228
Matthias Andreas Benkard424e16e2020-02-09 18:29:56 +0100229 <!-- FlexMark -->
230 <dependency>
231 <groupId>com.vladsch.flexmark</groupId>
232 <artifactId>flexmark-all</artifactId>
233 </dependency>
234
Matthias Andreas Benkard981f2792020-02-16 14:54:54 +0100235 <!-- Rome -->
236 <dependency>
237 <groupId>com.rometools</groupId>
238 <artifactId>rome</artifactId>
239 </dependency>
240
Matthias Andreas Benkard2a1383f2020-02-01 23:53:17 +0100241 <!-- JOSE for Java -->
242 <dependency>
243 <groupId>org.bitbucket.b_c</groupId>
244 <artifactId>jose4j</artifactId>
245 </dependency>
246
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +0100247 <!-- Annotations -->
248 <dependency>
249 <groupId>com.google.code.findbugs</groupId>
250 <artifactId>jsr305</artifactId>
251 <scope>provided</scope>
252 </dependency>
253
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +0100254 </dependencies>
255
256 <build>
257
258 <plugins>
259
260 <plugin>
261 <groupId>io.quarkus</groupId>
262 <artifactId>quarkus-maven-plugin</artifactId>
Matthias Andreas Benkard43d59d32020-08-16 10:57:23 +0200263 <version>${quarkus.version}</version>
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +0100264 <executions>
265 <execution>
266 <goals>
267 <goal>build</goal>
268 </goals>
269 </execution>
270 </executions>
271 </plugin>
272
273 <plugin>
274 <artifactId>maven-compiler-plugin</artifactId>
275 <version>${compiler-plugin.version}</version>
Matthias Andreas Benkard98e63f02020-04-18 19:45:48 +0200276
277 <configuration>
278 <annotationProcessorPaths>
Matthias Andreas Benkard6e41f382020-06-16 21:08:57 +0200279
Matthias Andreas Benkard98e63f02020-04-18 19:45:48 +0200280 <!-- Hibernate -->
281 <annotationProcessorPath>
282 <groupId>org.hibernate</groupId>
283 <artifactId>hibernate-jpamodelgen</artifactId>
284 <version>${hibernate.version}</version>
285 </annotationProcessorPath>
Matthias Andreas Benkard6e41f382020-06-16 21:08:57 +0200286
287 <!-- Quarkus -->
288 <annotationProcessorPath>
289 <groupId>io.quarkus</groupId>
290 <artifactId>quarkus-panache-common</artifactId>
Matthias Andreas Benkard43d59d32020-08-16 10:57:23 +0200291 <version>${quarkus.version}</version>
Matthias Andreas Benkard6e41f382020-06-16 21:08:57 +0200292 </annotationProcessorPath>
293
Matthias Andreas Benkard98e63f02020-04-18 19:45:48 +0200294 </annotationProcessorPaths>
295 </configuration>
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +0100296 </plugin>
297
Matthias Andreas Benkard813e5972020-06-14 19:27:42 +0200298 <!-- Resources -->
299 <plugin>
300 <artifactId>maven-resources-plugin</artifactId>
301 <version>${resources-plugin.version}</version>
302 <executions>
303 <execution>
304 <id>copy-resources</id>
305 <phase>prepare-package</phase>
306 <goals>
307 <goal>copy-resources</goal>
308 </goals>
309 <configuration>
310 <outputDirectory>${basedir}/target/classes/META-INF/resources</outputDirectory>
311 <resources>
312 <resource>
313 <directory>${basedir}/src/main/resources/META-INF/resources/dist</directory>
314 <filtering>true</filtering>
315 </resource>
316 </resources>
317 </configuration>
318 </execution>
319 </executions>
320 </plugin>
321
Matthias Andreas Benkard80fc4312020-06-13 16:59:04 +0200322 <!-- Liquibase -->
323 <plugin>
324 <groupId>org.liquibase</groupId>
325 <artifactId>liquibase-maven-plugin</artifactId>
326 <version>${liquibase.version}</version>
327 <configuration>
328 <propertyFile>src/main/resources/db/liquibase.properties</propertyFile>
329 </configuration>
330 <dependencies>
331 <dependency>
332 <groupId>org.liquibase.ext</groupId>
333 <artifactId>liquibase-hibernate5</artifactId> <!-- note: I tried hibernate4 release version as well -->
334 <version>${liquibase.version}</version>
335 </dependency>
336 <dependency>
337 <groupId>org.hibernate</groupId>
338 <artifactId>hibernate-core</artifactId>
339 <version>${hibernate.version}</version>
340 </dependency>
341 <dependency>
342 <groupId>org.hibernate</groupId>
343 <artifactId>hibernate-entitymanager</artifactId>
344 <version>${hibernate.version}</version>
345 </dependency>
346 <dependency>
347 <groupId>org.hibernate</groupId>
348 <artifactId>hibernate-envers</artifactId>
349 <version>${hibernate.version}</version>
350 </dependency>
351 <dependency>
352 <groupId>org.postgresql</groupId>
353 <artifactId>postgresql</artifactId>
354 <version>${postgresql.version}</version>
355 </dependency>
356 </dependencies>
357 </plugin>
358
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +0100359 <!-- Google Java Code Formatter, for enforcing style conventions -->
360 <plugin>
361 <groupId>com.diffplug.spotless</groupId>
362 <artifactId>spotless-maven-plugin</artifactId>
363 <version>${spotless-plugin.version}</version>
364 <configuration>
365 <java>
366 <removeUnusedImports/>
367 <importOrder>
368 <order>java,javax,org,com,de,io,dagger,eu.mulk,</order>
369 </importOrder>
370 <googleJavaFormat>
371 <version>${google.java.format.version}</version>
372 <style>GOOGLE</style>
373 </googleJavaFormat>
374 </java>
Matthias Andreas Benkard3f986ef2020-08-22 13:28:33 +0200375
376 <scala>
377 <scalafmt>
378 <version>${scalafmt.version}</version>
379 <file>${basedir}/.scalafmt.conf</file>
380 </scalafmt>
381 </scala>
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +0100382 </configuration>
383 </plugin>
Matthias Andreas Benkardf7bf7c42020-01-28 22:31:12 +0100384
385 <plugin>
Matthias Andreas Benkard7f4dacc2020-04-13 11:25:19 +0200386 <artifactId>maven-antrun-plugin</artifactId>
387 <version>${antrun-plugin.version}</version>
388 <executions>
389 <execution>
390 <phase>generate-resources</phase>
391 <configuration>
392 <target>
393 <ant target="web.resources" />
394 </target>
395 </configuration>
396 <goals>
397 <goal>run</goal>
398 </goals>
399 </execution>
400 </executions>
401 </plugin>
402
Matthias Andreas Benkard7e71d1c2020-04-16 17:07:59 +0200403 <plugin>
404 <groupId>net.alchim31.maven</groupId>
405 <artifactId>scala-maven-plugin</artifactId>
406 <version>${scala-plugin.version}</version>
407
408 <executions>
409 <execution>
410 <id>scala-compile-first</id>
411 <phase>process-resources</phase>
412 <goals>
413 <goal>add-source</goal>
414 <goal>compile</goal>
415 </goals>
416 </execution>
417 <execution>
418 <id>scala-test-compile</id>
419 <phase>process-test-resources</phase>
420 <goals>
421 <goal>add-source</goal>
422 <goal>testCompile</goal>
423 </goals>
424 </execution>
425 </executions>
426
427 <configuration>
428 <scalaVersion>${scala.version}</scalaVersion>
429 <localInstall>false</localInstall>
430 <!--<recompileMode>incremental</recompileMode>-->
431 <args>
432 <arg>-Xsource:3</arg>
433 <!--
434 <arg>-deprecation</arg>
435 <arg>-feature</arg>
436 <arg>-explaintypes</arg>
437 <arg>-target:jvm-1.8</arg>
438 <arg>-Ypartial-unification</arg>
439 -->
440 </args>
441
442 <javacArgs>
443 <javacArg>-Xlint:deprecation</javacArg>
444 </javacArgs>
445
446 <additionalDependencies>
447
448 <!-- Hibernate -->
449 <dependency>
450 <groupId>org.hibernate</groupId>
451 <artifactId>hibernate-jpamodelgen</artifactId>
452 <version>${hibernate.version}</version>
453 </dependency>
454
455 <!-- Quarkus -->
456 <dependency>
457 <groupId>io.quarkus</groupId>
458 <artifactId>quarkus-panache-common</artifactId>
459 <version>${quarkus.version}</version>
460 </dependency>
461
462 <!-- Annotations -->
463 <dependency>
464 <groupId>org.jetbrains.kotlin</groupId>
465 <artifactId>kotlin-annotations-jvm</artifactId>
466 <version>${kotlin-annotations.version}</version>
467 </dependency>
468
469 </additionalDependencies>
470 </configuration>
471
472 </plugin>
473
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +0100474 </plugins>
475
Matthias Andreas Benkardb712a012020-01-26 08:10:49 +0100476 <resources>
477 <resource>
478 <directory>src/main/resources</directory>
479 <excludes>
Matthias Andreas Benkard81996642020-06-15 21:11:30 +0200480 <exclude>META-INF/resources/.cache</exclude>
481 <exclude>META-INF/resources/.eslintrc.js</exclude>
482 <exclude>META-INF/resources/.flowconfig</exclude>
Matthias Andreas Benkard89c25ea2020-06-15 21:01:01 +0200483 <exclude>META-INF/resources/.parcel-cache/**/*</exclude>
Matthias Andreas Benkard81996642020-06-15 21:11:30 +0200484 <exclude>META-INF/resources/dist/**/*</exclude>
Matthias Andreas Benkardb712a012020-01-26 08:10:49 +0100485 <exclude>META-INF/resources/node_modules/**/*</exclude>
Matthias Andreas Benkard81996642020-06-15 21:11:30 +0200486 <exclude>META-INF/resources/web_modules/**/*</exclude>
Matthias Andreas Benkard97130f92020-01-27 21:03:39 +0100487 <exclude>META-INF/resources/package.json</exclude>
488 <exclude>META-INF/resources/yarn.lock</exclude>
Matthias Andreas Benkardb712a012020-01-26 08:10:49 +0100489 </excludes>
490 <filtering>false</filtering>
491 </resource>
492 </resources>
493
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +0100494 </build>
495
496 <profiles>
497
498 <profile>
499
500 <id>native</id>
501
502 <activation>
503 <property>
504 <name>native</name>
505 </property>
506 </activation>
507
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +0100508 <properties>
509 <quarkus.package.type>native</quarkus.package.type>
510 </properties>
511
512 </profile>
513
514 </profiles>
515
516</project>