353 lines
15 KiB
XML
353 lines
15 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0"
|
|
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
|
|
<modelVersion>4.0.0</modelVersion>
|
|
<groupId>com.peakup</groupId>
|
|
<artifactId>peakup-backend</artifactId>
|
|
<version>1.0-SNAPSHOT</version>
|
|
|
|
<properties>
|
|
<compiler-plugin.version>3.15.0</compiler-plugin.version>
|
|
<maven.compiler.release>21</maven.compiler.release>
|
|
<maven.compiler.source>21</maven.compiler.source>
|
|
<maven.compiler.target>21</maven.compiler.target>
|
|
<lombok.version>1.18.42</lombok.version>
|
|
<jsr305.version>3.0.2</jsr305.version>
|
|
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
|
|
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
|
|
<quarkus.platform.artifact-id>quarkus-bom</quarkus.platform.artifact-id>
|
|
<quarkus.platform.group-id>io.quarkus.platform</quarkus.platform.group-id>
|
|
<quarkus.platform.version>3.31.3</quarkus.platform.version>
|
|
<quarkus.jvm.args>--enable-native-access=ALL-UNNAMED</quarkus.jvm.args>
|
|
<maven.surefire.argLine>
|
|
--enable-native-access=ALL-UNNAMED
|
|
--add-opens java.base/java.util.concurrent=ALL-UNNAMED
|
|
</maven.surefire.argLine>
|
|
<skipITs>true</skipITs>
|
|
<surefire-plugin.version>3.5.3</surefire-plugin.version>
|
|
</properties>
|
|
|
|
<dependencyManagement>
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>${quarkus.platform.group-id}</groupId>
|
|
<artifactId>${quarkus.platform.artifact-id}</artifactId>
|
|
<version>${quarkus.platform.version}</version>
|
|
<type>pom</type>
|
|
<scope>import</scope>
|
|
</dependency>
|
|
</dependencies>
|
|
</dependencyManagement>
|
|
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>io.quarkus</groupId>
|
|
<artifactId>quarkus-rest</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>io.quarkus</groupId>
|
|
<artifactId>quarkus-rest-jackson</artifactId>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>io.quarkus</groupId>
|
|
<artifactId>quarkus-rest-client</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>io.quarkus</groupId>
|
|
<artifactId>quarkus-rest-client-jackson</artifactId>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>io.quarkus</groupId>
|
|
<artifactId>quarkus-cache</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>io.quarkus</groupId>
|
|
<artifactId>quarkus-scheduler</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>io.quarkus</groupId>
|
|
<artifactId>quarkus-arc</artifactId>
|
|
</dependency>
|
|
|
|
<dependency>
|
|
<groupId>io.quarkus</groupId>
|
|
<artifactId>quarkus-hibernate-orm</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>io.quarkus</groupId>
|
|
<artifactId>quarkus-jdbc-postgresql</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>io.quarkus</groupId>
|
|
<artifactId>quarkus-flyway</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.flywaydb</groupId>
|
|
<artifactId>flyway-database-postgresql</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.hibernate.orm</groupId>
|
|
<artifactId>hibernate-processor</artifactId>
|
|
<scope>provided</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.projectlombok</groupId>
|
|
<artifactId>lombok</artifactId>
|
|
<version>${lombok.version}</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.commons</groupId>
|
|
<artifactId>commons-lang3</artifactId>
|
|
<version>3.19.0</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.apache.commons</groupId>
|
|
<artifactId>commons-text</artifactId>
|
|
<version>1.14.0</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.google.code.findbugs</groupId>
|
|
<artifactId>jsr305</artifactId>
|
|
<version>${jsr305.version}</version>
|
|
<scope>provided</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.mapstruct</groupId>
|
|
<artifactId>mapstruct</artifactId>
|
|
<version>1.6.3</version>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.github.victools</groupId>
|
|
<artifactId>jsonschema-generator</artifactId>
|
|
<version>5.0.0</version>
|
|
<scope>compile</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.github.victools</groupId>
|
|
<artifactId>jsonschema-module-jakarta-validation</artifactId>
|
|
<version>5.0.0</version>
|
|
<scope>compile</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.github.victools</groupId>
|
|
<artifactId>jsonschema-module-jackson</artifactId>
|
|
<version>5.0.0</version>
|
|
<scope>compile</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>io.quarkus</groupId>
|
|
<artifactId>quarkus-junit5</artifactId>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.testcontainers</groupId>
|
|
<artifactId>testcontainers-postgresql</artifactId>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>io.rest-assured</groupId>
|
|
<artifactId>rest-assured</artifactId>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.tngtech.archunit</groupId>
|
|
<artifactId>archunit-junit5</artifactId>
|
|
<version>1.3.0</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
</dependencies>
|
|
|
|
<build>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>${quarkus.platform.group-id}</groupId>
|
|
<artifactId>quarkus-maven-plugin</artifactId>
|
|
<version>${quarkus.platform.version}</version>
|
|
<extensions>true</extensions>
|
|
<executions>
|
|
<execution>
|
|
<goals>
|
|
<goal>build</goal>
|
|
<goal>generate-code</goal>
|
|
<goal>generate-code-tests</goal>
|
|
<goal>native-image-agent</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<artifactId>maven-compiler-plugin</artifactId>
|
|
<version>${compiler-plugin.version}</version>
|
|
<configuration>
|
|
<release>${maven.compiler.release}</release>
|
|
<showWarnings>true</showWarnings>
|
|
<showDeprecation>true</showDeprecation>
|
|
<!--fork>true</fork-->
|
|
<forceLegacyJavacApi>true</forceLegacyJavacApi>
|
|
<compilerArgs>
|
|
<arg>-XDcompilePolicy=simple</arg>
|
|
<arg>-XDshould-stop.ifError=FLOW</arg>
|
|
<arg>
|
|
-Xplugin:ErrorProne
|
|
-Xep:NullAway:ERROR
|
|
-XepOpt:NullAway:AnnotatedPackages=com.peakup
|
|
-Xep:MissingSummary:OFF
|
|
-Xep:MissingOverride:ERROR
|
|
-Xep:DefaultCharset:ERROR
|
|
-Xep:StringCaseLocaleUsage:ERROR
|
|
-Xep:MathAbsoluteRandom:ERROR
|
|
-Xep:UnnecessaryDefaultInEnumSwitch:ERROR
|
|
-Xep:OperatorPrecedence:ERROR
|
|
-XepOpt:NullAway:TreatGeneratedAsUnannotated=true
|
|
-XepOpt:NullAway:CheckOptionalEmptiness=true
|
|
</arg>
|
|
|
|
<arg>-Xpkginfo:always</arg>
|
|
<arg>-J--add-exports=jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED</arg>
|
|
<arg>-J--add-exports=jdk.compiler/com.sun.tools.javac.file=ALL-UNNAMED</arg>
|
|
<arg>-J--add-exports=jdk.compiler/com.sun.tools.javac.main=ALL-UNNAMED</arg>
|
|
<arg>-J--add-exports=jdk.compiler/com.sun.tools.javac.model=ALL-UNNAMED</arg>
|
|
<arg>-J--add-exports=jdk.compiler/com.sun.tools.javac.parser=ALL-UNNAMED</arg>
|
|
<arg>-J--add-exports=jdk.compiler/com.sun.tools.javac.processing=ALL-UNNAMED</arg>
|
|
<arg>-J--add-exports=jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED</arg>
|
|
<arg>-J--add-exports=jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED</arg>
|
|
<arg>-J--add-opens=jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED</arg>
|
|
<arg>-J--add-opens=jdk.compiler/com.sun.tools.javac.comp=ALL-UNNAMED</arg>
|
|
<arg>-Xmaxerrs</arg>
|
|
<arg>1000</arg>
|
|
</compilerArgs>
|
|
<annotationProcessorPaths>
|
|
<path>
|
|
<groupId>org.projectlombok</groupId>
|
|
<artifactId>lombok</artifactId>
|
|
<version>${lombok.version}</version>
|
|
</path>
|
|
<path>
|
|
<groupId>org.mapstruct</groupId>
|
|
<artifactId>mapstruct-processor</artifactId>
|
|
<version>1.6.3</version>
|
|
</path>
|
|
<path>
|
|
<groupId>com.google.errorprone</groupId>
|
|
<artifactId>error_prone_core</artifactId>
|
|
<version>2.37.0</version>
|
|
</path>
|
|
<path>
|
|
<groupId>com.uber.nullaway</groupId>
|
|
<artifactId>nullaway</artifactId>
|
|
<version>0.13.1</version>
|
|
</path>
|
|
<path>
|
|
<groupId>org.hibernate.orm</groupId>
|
|
<artifactId>hibernate-jpamodelgen</artifactId>
|
|
</path>
|
|
</annotationProcessorPaths>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-enforcer-plugin</artifactId>
|
|
<version>3.5.0</version>
|
|
<executions>
|
|
<execution>
|
|
<id>enforce-java-version</id>
|
|
<phase>validate</phase>
|
|
<goals>
|
|
<goal>enforce</goal>
|
|
</goals>
|
|
<configuration>
|
|
<rules>
|
|
<requireJavaVersion>
|
|
<version>[21,22)</version>
|
|
</requireJavaVersion>
|
|
</rules>
|
|
<fail>true</fail>
|
|
</configuration>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<artifactId>maven-surefire-plugin</artifactId>
|
|
<version>${surefire-plugin.version}</version>
|
|
<configuration>
|
|
<argLine>${maven.surefire.argLine}</argLine>
|
|
<systemPropertyVariables>
|
|
<java.util.logging.manager>org.jboss.logmanager.LogManager</java.util.logging.manager>
|
|
<maven.home>${maven.home}</maven.home>
|
|
</systemPropertyVariables>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-checkstyle-plugin</artifactId>
|
|
<version>3.6.0</version>
|
|
<executions>
|
|
<execution>
|
|
<id>checkstyle</id>
|
|
<phase>verify</phase>
|
|
<goals>
|
|
<goal>check</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
<configuration>
|
|
<configLocation>checkstyle.xml</configLocation>
|
|
<suppressionsLocation>suppressions.xml</suppressionsLocation>
|
|
<excludes>**/generated-sources/**,**/generated/**</excludes>
|
|
<excludeGeneratedSources>true</excludeGeneratedSources>
|
|
<includeTestSourceDirectory>false</includeTestSourceDirectory>
|
|
<violationSeverity>warning</violationSeverity>
|
|
<failsOnError>false</failsOnError>
|
|
<failOnViolation>true</failOnViolation>
|
|
<consoleOutput>true</consoleOutput>
|
|
</configuration>
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>com.puppycrawl.tools</groupId>
|
|
<artifactId>checkstyle</artifactId>
|
|
<version>10.21.4</version>
|
|
</dependency>
|
|
</dependencies>
|
|
</plugin>
|
|
<plugin>
|
|
<artifactId>maven-failsafe-plugin</artifactId>
|
|
<version>${surefire-plugin.version}</version>
|
|
<executions>
|
|
<execution>
|
|
<goals>
|
|
<goal>integration-test</goal>
|
|
<goal>verify</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
<configuration>
|
|
<argLine>${maven.surefire.argLine}</argLine>
|
|
<systemPropertyVariables>
|
|
<native.image.path>${project.build.directory}/${project.build.finalName}-runner
|
|
</native.image.path>
|
|
<java.util.logging.manager>org.jboss.logmanager.LogManager</java.util.logging.manager>
|
|
<maven.home>${maven.home}</maven.home>
|
|
</systemPropertyVariables>
|
|
</configuration>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
|
|
<profiles>
|
|
<profile>
|
|
<id>native</id>
|
|
<activation>
|
|
<property>
|
|
<name>native</name>
|
|
</property>
|
|
</activation>
|
|
<properties>
|
|
<skipITs>false</skipITs>
|
|
<quarkus.native.enabled>true</quarkus.native.enabled>
|
|
</properties>
|
|
</profile>
|
|
</profiles>
|
|
</project>
|