blob: b5faba7bca4e7440cca3448d7f2733927f45bb07 [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
16 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
17 <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
18
19 <compiler-plugin.version>3.8.1</compiler-plugin.version>
Matthias Andreas Benkardf7bf7c42020-01-28 22:31:12 +010020 <dockerfile-plugin.version>1.4.13</dockerfile-plugin.version>
Matthias Andreas Benkard0312ec72020-02-23 07:07:26 +010021 <quarkus-plugin.version>1.2.1.Final</quarkus-plugin.version>
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +010022 <surefire-plugin.version>3.0.0-M4</surefire-plugin.version>
23 <spotless-plugin.version>1.26.1</spotless-plugin.version>
24
Matthias Andreas Benkard2710bf32020-01-25 10:48:07 +010025 <!-- <quarkus.platform.artifact-id>quarkus-universe-bom</quarkus.platform.artifact-id> -->
26 <quarkus.platform.artifact-id>quarkus-bom</quarkus.platform.artifact-id>
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +010027 <quarkus.platform.group-id>io.quarkus</quarkus.platform.group-id>
Matthias Andreas Benkard551f50c2020-03-15 12:34:07 +010028 <quarkus.platform.version>1.3.0.Final</quarkus.platform.version>
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +010029
30 <findbugs-jsr305.version>3.0.2</findbugs-jsr305.version>
Matthias Andreas Benkard06849562020-02-14 20:13:17 +010031 <flexmark.version>0.60.2</flexmark.version>
Matthias Andreas Benkard551f50c2020-03-15 12:34:07 +010032 <hibernate-types.version>2.9.5</hibernate-types.version>
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +010033 <jakarta-jacc-api.version>1.6.1</jakarta-jacc-api.version>
34 <jna.version>5.5.0</jna.version>
Matthias Andreas Benkard551f50c2020-03-15 12:34:07 +010035 <jsoup.version>1.13.1</jsoup.version>
Matthias Andreas Benkard06849562020-02-14 20:13:17 +010036 <mapstruct.version>1.3.1.Final</mapstruct.version>
Matthias Andreas Benkard981f2792020-02-16 14:54:54 +010037 <rome.version>1.12.2</rome.version>
Matthias Andreas Benkard551f50c2020-03-15 12:34:07 +010038 <testcontainers.version>1.13.0</testcontainers.version>
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +010039 </properties>
40
41 <dependencyManagement>
42 <dependencies>
43
44 <dependency>
45 <groupId>${quarkus.platform.group-id}</groupId>
46 <artifactId>${quarkus.platform.artifact-id}</artifactId>
47 <version>${quarkus.platform.version}</version>
48 <type>pom</type>
49 <scope>import</scope>
50 </dependency>
51
52 <!-- Hibernate PostgreSQL Extra Types -->
53 <dependency>
54 <groupId>com.vladmihalcea</groupId>
55 <artifactId>hibernate-types-52</artifactId>
56 <version>${hibernate-types.version}</version>
57 </dependency>
58
Matthias Andreas Benkard4e29a242020-01-25 05:38:27 +010059 <!-- Jsoup -->
60 <dependency>
61 <groupId>org.jsoup</groupId>
62 <artifactId>jsoup</artifactId>
63 <version>${jsoup.version}</version>
64 </dependency>
65
Matthias Andreas Benkard424e16e2020-02-09 18:29:56 +010066 <!-- FlexMark -->
67 <dependency>
68 <groupId>com.vladsch.flexmark</groupId>
69 <artifactId>flexmark-all</artifactId>
70 <version>${flexmark.version}</version>
71 </dependency>
72
Matthias Andreas Benkard981f2792020-02-16 14:54:54 +010073 <!-- Rome -->
74 <dependency>
75 <groupId>com.rometools</groupId>
76 <artifactId>rome</artifactId>
77 <version>${rome.version}</version>
78 </dependency>
79
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +010080 <!-- JNA -->
81 <dependency>
82 <groupId>net.java.dev.jna</groupId>
83 <artifactId>jna</artifactId>
84 <version>${jna.version}</version>
85 </dependency>
86
87 <!-- JACC -->
88 <dependency>
89 <groupId>jakarta.security.jacc</groupId>
90 <artifactId>jakarta.security.jacc-api</artifactId>
91 <version>${jakarta-jacc-api.version}</version>
92 </dependency>
93
Matthias Andreas Benkard2a1383f2020-02-01 23:53:17 +010094 <!-- JOSE for Java -->
95 <dependency>
96 <groupId>org.bitbucket.b_c</groupId>
97 <artifactId>jose4j</artifactId>
98 <version>0.7.0</version>
99 </dependency>
100
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +0100101 <!-- MapStruct -->
102 <dependency>
103 <groupId>org.mapstruct</groupId>
104 <artifactId>mapstruct</artifactId>
105 <version>${mapstruct.version}</version>
106 </dependency>
107 <dependency>
108 <groupId>org.mapstruct</groupId>
109 <artifactId>mapstruct-processor</artifactId>
110 <version>${mapstruct.version}</version>
111 <scope>provided</scope>
112 </dependency>
113
114 <!-- Annotations -->
115 <dependency>
116 <groupId>com.google.code.findbugs</groupId>
117 <artifactId>jsr305</artifactId>
118 <version>${findbugs-jsr305.version}</version>
119 <scope>provided</scope>
120 </dependency>
121
122 <!-- Testing -->
123 <dependency>
124 <groupId>org.testcontainers</groupId>
125 <artifactId>testcontainers</artifactId>
126 <version>${testcontainers.version}</version>
127 <scope>test</scope>
128 </dependency>
129 <dependency>
130 <groupId>org.testcontainers</groupId>
131 <artifactId>postgresql</artifactId>
132 <version>${testcontainers.version}</version>
133 <scope>test</scope>
134 </dependency>
135
136 </dependencies>
137 </dependencyManagement>
138
139 <dependencies>
140
141 <dependency>
142 <groupId>io.quarkus</groupId>
Matthias Andreas Benkard4cb34f42020-01-24 14:44:28 +0100143 <artifactId>quarkus-agroal</artifactId>
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +0100144 </dependency>
145 <dependency>
146 <groupId>io.quarkus</groupId>
Matthias Andreas Benkardc27d1cb2020-01-26 11:11:24 +0100147 <artifactId>quarkus-elytron-security-properties-file</artifactId>
148 </dependency>
149 <dependency>
150 <groupId>io.quarkus</groupId>
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +0100151 <artifactId>quarkus-flyway</artifactId>
152 </dependency>
153 <dependency>
154 <groupId>io.quarkus</groupId>
Matthias Andreas Benkard4cb34f42020-01-24 14:44:28 +0100155 <artifactId>quarkus-hibernate-orm-panache</artifactId>
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +0100156 </dependency>
157 <dependency>
158 <groupId>io.quarkus</groupId>
159 <artifactId>quarkus-hibernate-validator</artifactId>
160 </dependency>
161 <dependency>
162 <groupId>io.quarkus</groupId>
Matthias Andreas Benkard4cb34f42020-01-24 14:44:28 +0100163 <artifactId>quarkus-jdbc-postgresql</artifactId>
164 </dependency>
Matthias Andreas Benkard84db3792020-03-15 12:48:29 +0100165 <!--
Matthias Andreas Benkard4cb34f42020-01-24 14:44:28 +0100166 <dependency>
167 <groupId>io.quarkus</groupId>
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +0100168 <artifactId>quarkus-kubernetes</artifactId>
169 </dependency>
Matthias Andreas Benkard84db3792020-03-15 12:48:29 +0100170 -->
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +0100171 <dependency>
172 <groupId>io.quarkus</groupId>
Matthias Andreas Benkard4cb34f42020-01-24 14:44:28 +0100173 <artifactId>quarkus-mailer</artifactId>
174 </dependency>
175 <dependency>
176 <groupId>io.quarkus</groupId>
177 <artifactId>quarkus-oidc</artifactId>
178 </dependency>
179 <dependency>
180 <groupId>io.quarkus</groupId>
181 <artifactId>quarkus-resteasy</artifactId>
182 </dependency>
183 <dependency>
184 <groupId>io.quarkus</groupId>
185 <artifactId>quarkus-resteasy-jsonb</artifactId>
186 </dependency>
187 <dependency>
188 <groupId>io.quarkus</groupId>
189 <artifactId>quarkus-resteasy-qute</artifactId>
190 </dependency>
191 <dependency>
192 <groupId>io.quarkus</groupId>
193 <artifactId>quarkus-scheduler</artifactId>
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +0100194 </dependency>
Matthias Andreas Benkard2a1383f2020-02-01 23:53:17 +0100195 <dependency>
196 <groupId>io.quarkus</groupId>
197 <artifactId>quarkus-smallrye-jwt</artifactId>
198 </dependency>
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +0100199
200 <!-- JNA -->
201 <dependency>
202 <groupId>net.java.dev.jna</groupId>
203 <artifactId>jna</artifactId>
204 </dependency>
205
206 <!-- JACC -->
207 <dependency>
208 <groupId>jakarta.security.jacc</groupId>
209 <artifactId>jakarta.security.jacc-api</artifactId>
210 </dependency>
211
212 <!-- Hibernate PostgreSQL Extra Types -->
213 <dependency>
214 <groupId>com.vladmihalcea</groupId>
215 <artifactId>hibernate-types-52</artifactId>
216 </dependency>
217
Matthias Andreas Benkard404ac1d2020-02-22 11:29:37 +0100218 <!-- Hibernate -->
219 <dependency>
220 <groupId>org.hibernate</groupId>
221 <artifactId>hibernate-jpamodelgen</artifactId>
222 </dependency>
223
Matthias Andreas Benkard4e29a242020-01-25 05:38:27 +0100224 <!-- Jsoup -->
225 <dependency>
226 <groupId>org.jsoup</groupId>
227 <artifactId>jsoup</artifactId>
228 </dependency>
229
Matthias Andreas Benkard424e16e2020-02-09 18:29:56 +0100230 <!-- FlexMark -->
231 <dependency>
232 <groupId>com.vladsch.flexmark</groupId>
233 <artifactId>flexmark-all</artifactId>
234 </dependency>
235
Matthias Andreas Benkard981f2792020-02-16 14:54:54 +0100236 <!-- Rome -->
237 <dependency>
238 <groupId>com.rometools</groupId>
239 <artifactId>rome</artifactId>
240 </dependency>
241
Matthias Andreas Benkard2a1383f2020-02-01 23:53:17 +0100242 <!-- JOSE for Java -->
243 <dependency>
244 <groupId>org.bitbucket.b_c</groupId>
245 <artifactId>jose4j</artifactId>
246 </dependency>
247
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +0100248 <!-- MapStruct -->
249 <dependency>
250 <groupId>org.mapstruct</groupId>
251 <artifactId>mapstruct</artifactId>
252 </dependency>
253 <dependency>
254 <groupId>org.mapstruct</groupId>
255 <artifactId>mapstruct-processor</artifactId>
256 <scope>provided</scope>
257 </dependency>
258
259 <!-- Annotations -->
260 <dependency>
261 <groupId>com.google.code.findbugs</groupId>
262 <artifactId>jsr305</artifactId>
263 <scope>provided</scope>
264 </dependency>
265
266 <!-- Testing -->
267 <dependency>
268 <groupId>io.quarkus</groupId>
269 <artifactId>quarkus-junit5</artifactId>
270 <scope>test</scope>
271 </dependency>
272 <dependency>
273 <groupId>io.rest-assured</groupId>
274 <artifactId>rest-assured</artifactId>
275 <scope>test</scope>
276 </dependency>
277 <dependency>
278 <groupId>org.testcontainers</groupId>
279 <artifactId>junit-jupiter</artifactId>
280 <scope>test</scope>
281 </dependency>
282 <dependency>
283 <groupId>org.testcontainers</groupId>
284 <artifactId>testcontainers</artifactId>
285 <scope>test</scope>
286 </dependency>
287 <dependency>
288 <groupId>org.testcontainers</groupId>
289 <artifactId>postgresql</artifactId>
290 <scope>test</scope>
291 </dependency>
292
293 </dependencies>
294
295 <build>
296
297 <plugins>
298
299 <plugin>
300 <groupId>io.quarkus</groupId>
301 <artifactId>quarkus-maven-plugin</artifactId>
302 <version>${quarkus-plugin.version}</version>
303 <executions>
304 <execution>
305 <goals>
306 <goal>build</goal>
307 </goals>
308 </execution>
309 </executions>
310 </plugin>
311
312 <plugin>
313 <artifactId>maven-compiler-plugin</artifactId>
314 <version>${compiler-plugin.version}</version>
315 </plugin>
316
317 <plugin>
318 <artifactId>maven-surefire-plugin</artifactId>
319 <version>${surefire-plugin.version}</version>
320 <configuration>
321 <systemProperties>
322 <java.util.logging.manager>org.jboss.logmanager.LogManager</java.util.logging.manager>
323 <compilerArgs>
324 <compilerArg>-Amapstruct.defaultComponentModel=cdi</compilerArg>
325 </compilerArgs>
326 </systemProperties>
327 </configuration>
328 </plugin>
329
330 <!-- Google Java Code Formatter, for enforcing style conventions -->
331 <plugin>
332 <groupId>com.diffplug.spotless</groupId>
333 <artifactId>spotless-maven-plugin</artifactId>
334 <version>${spotless-plugin.version}</version>
335 <configuration>
336 <java>
337 <removeUnusedImports/>
338 <importOrder>
339 <order>java,javax,org,com,de,io,dagger,eu.mulk,</order>
340 </importOrder>
341 <googleJavaFormat>
342 <version>${google.java.format.version}</version>
343 <style>GOOGLE</style>
344 </googleJavaFormat>
345 </java>
346 </configuration>
347 </plugin>
Matthias Andreas Benkardf7bf7c42020-01-28 22:31:12 +0100348
349 <plugin>
350 <groupId>com.spotify</groupId>
351 <artifactId>dockerfile-maven-plugin</artifactId>
352 <version>${dockerfile-plugin.version}</version>
353 <executions>
354 <execution>
355 <id>default</id>
356 <goals>
357 <goal>build</goal>
358 <goal>push</goal>
359 </goals>
360 </execution>
361 </executions>
362 <configuration>
363 <dockerfile>src/main/docker/Dockerfile.jvm</dockerfile>
364 <repository>docker.benkard.de/mulk/mulkcms2</repository>
365 <tag>${project.version}</tag>
366 </configuration>
367 </plugin>
368
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +0100369 </plugins>
370
Matthias Andreas Benkardb712a012020-01-26 08:10:49 +0100371 <resources>
372 <resource>
373 <directory>src/main/resources</directory>
374 <excludes>
375 <exclude>META-INF/resources/node_modules/**/*</exclude>
Matthias Andreas Benkard97130f92020-01-27 21:03:39 +0100376 <exclude>META-INF/resources/package.json</exclude>
377 <exclude>META-INF/resources/yarn.lock</exclude>
Matthias Andreas Benkardb712a012020-01-26 08:10:49 +0100378 </excludes>
379 <filtering>false</filtering>
380 </resource>
381 </resources>
382
Matthias Andreas Benkard8ddaf662020-01-19 20:21:57 +0100383 </build>
384
385 <profiles>
386
387 <profile>
388
389 <id>native</id>
390
391 <activation>
392 <property>
393 <name>native</name>
394 </property>
395 </activation>
396
397 <build>
398 <plugins>
399 <plugin>
400 <artifactId>maven-failsafe-plugin</artifactId>
401 <version>${surefire-plugin.version}</version>
402 <executions>
403 <execution>
404 <goals>
405 <goal>integration-test</goal>
406 <goal>verify</goal>
407 </goals>
408 <configuration>
409 <systemProperties>
410 <native.image.path>${project.build.directory}/${project.build.finalName}-runner</native.image.path>
411 </systemProperties>
412 </configuration>
413 </execution>
414 </executions>
415 </plugin>
416 </plugins>
417 </build>
418
419 <properties>
420 <quarkus.package.type>native</quarkus.package.type>
421 </properties>
422
423 </profile>
424
425 </profiles>
426
427</project>