2023-08-31 14:46:13 +02:00
<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/xsd/maven-4.0.0.xsd" >
<modelVersion > 4.0.0</modelVersion>
2020-02-12 15:06:46 +01:00
2023-08-31 14:46:13 +02:00
<groupId > ch.ethz.seb</groupId>
<artifactId > seb-server</artifactId>
<version > ${revision}</version>
<name > seb-server</name>
<description > web-service for SEB maintenance and monitoring active SEB sessions</description>
2020-02-12 15:06:46 +01:00
2023-08-31 14:46:13 +02:00
<parent >
<groupId > org.springframework.boot</groupId>
<artifactId > spring-boot-starter-parent</artifactId>
<version > 2.6.15</version>
</parent>
2020-02-12 15:06:46 +01:00
2023-08-31 14:46:13 +02:00
<packaging > jar</packaging>
2020-02-12 15:06:46 +01:00
2023-08-31 14:46:13 +02:00
<properties >
2024-09-02 12:08:35 +02:00
<sebserver-version > 2.0.0</sebserver-version>
2023-08-31 14:46:13 +02:00
<build-version > ${sebserver-version}</build-version>
<revision > ${sebserver-version}</revision>
<project.build.sourceEncoding > UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding > UTF-8</project.reporting.outputEncoding>
</properties>
2020-02-12 15:06:46 +01:00
2023-08-31 14:46:13 +02:00
<!-- NOTE: There currently are two profiles, a default one to build on
2020-02-12 15:06:46 +01:00
Java 11 (from eclipse and command-line) and one to build still on Java 8
to support the Jenkins build on CI-Server that still no Java 11 installed -->
2023-08-31 14:46:13 +02:00
<profiles >
<profile >
<id > Java 17</id>
<activation >
<activeByDefault > true</activeByDefault>
</activation>
<properties >
<java.version > 17</java.version>
</properties>
<build >
<finalName > ${project.artifactId}-${build-version}</finalName>
<plugins >
<plugin >
<groupId > org.apache.maven.plugins</groupId>
<artifactId > maven-compiler-plugin</artifactId>
<configuration >
<release > ${java.version}</release>
<encoding > UTF-8</encoding>
</configuration>
</plugin>
<plugin >
<groupId > org.apache.maven.plugins</groupId>
<artifactId > maven-surefire-plugin</artifactId>
<configuration >
<encoding > UTF-8</encoding>
<systemPropertyVariables >
<file.encoding > UTF-8</file.encoding>
</systemPropertyVariables>
</configuration>
</plugin>
</plugins>
</build>
<dependencies >
<dependency >
<groupId > org.glassfish.jaxb</groupId>
<artifactId > jaxb-runtime</artifactId>
<version > 2.4.0-b180830.0438</version> <!-- $NO - MVN - MAN - VER$ --> <!-- TODO move to stable version when available -->
</dependency>
</dependencies>
</profile>
2020-02-12 15:06:46 +01:00
2023-08-31 14:46:13 +02:00
<profile >
<id > let_reporting</id>
<properties >
2024-06-24 13:46:25 +02:00
<java.version > 1.8</java.version>
2023-08-31 14:46:13 +02:00
</properties>
<build >
<plugins >
2020-02-12 15:06:46 +01:00
2023-08-31 14:46:13 +02:00
<plugin >
<groupId > org.apache.maven.plugins</groupId>
<artifactId > maven-compiler-plugin</artifactId>
<configuration >
2024-06-24 13:46:25 +02:00
<source > 1.8</source>
<target > 1.8</target>
2023-08-31 14:46:13 +02:00
</configuration>
</plugin>
2020-02-12 15:06:46 +01:00
2023-08-31 14:46:13 +02:00
<plugin >
<groupId > org.apache.maven.plugins</groupId>
<artifactId > maven-surefire-plugin</artifactId>
<configuration >
<encoding > UTF-8</encoding>
2024-06-24 13:23:19 +02:00
<systemPropertyVariables >
<file.encoding > UTF-8</file.encoding>
</systemPropertyVariables>
2023-08-31 14:46:13 +02:00
</configuration>
</plugin>
2020-02-12 15:06:46 +01:00
2023-08-31 14:46:13 +02:00
<plugin >
<groupId > org.apache.maven.plugins</groupId>
<artifactId > maven-failsafe-plugin</artifactId>
</plugin>
2020-02-12 15:06:46 +01:00
2023-08-31 14:46:13 +02:00
<plugin >
<groupId > org.apache.maven.plugins</groupId>
<artifactId > maven-pmd-plugin</artifactId>
<version > 3.10.0</version>
<configuration >
<skipEmptyReport > false</skipEmptyReport>
<failOnViolation > false</failOnViolation>
<targetJdk > ${java.version}</targetJdk>
<linkXRef > false</linkXRef>
<rulesets >
<ruleset > pmd-rulesets.xml</ruleset>
</rulesets>
</configuration>
<executions >
<execution >
<goals >
<goal > check</goal>
<goal > cpd-check</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin >
<groupId > com.github.spotbugs</groupId>
<artifactId > spotbugs-maven-plugin</artifactId>
<version > 4.5.3.0</version>
<configuration >
<effort > Max</effort>
<failOnError > false</failOnError>
<threshold > Low</threshold>
<xmlOutput > true</xmlOutput>
<excludeFilterFile > findbugs-excludes.xml</excludeFilterFile>
</configuration>
<dependencies >
<!-- overwrite dependency on spotbugs if you want to specify the version of spotbugs -->
<dependency >
<groupId > com.github.spotbugs</groupId>
<artifactId > spotbugs</artifactId>
<version > 4.6.0</version>
</dependency>
</dependencies>
</plugin>
<plugin >
<groupId > org.jacoco</groupId>
<artifactId > jacoco-maven-plugin</artifactId>
2024-06-24 13:23:19 +02:00
<version > 0.8.12</version>
2023-08-31 14:46:13 +02:00
<executions >
<execution >
<id > prepare-agent</id>
<goals >
<goal > prepare-agent</goal>
</goals>
</execution>
<execution >
<id > report</id>
<phase > prepare-package</phase>
<goals >
<goal > report</goal>
</goals>
<configuration >
<excludes >
<exclude > ch/ethz/seb/sebserver/gui/**/*</exclude>
<exclude > ch/ethz/seb/sebserver/webservice/datalayer/batis/mapper/**/*</exclude>
<exclude > ch/ethz/seb/sebserver/webservice/datalayer/batis/model/**/*</exclude>
</excludes>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
2024-03-05 09:49:19 +01:00
<dependencies >
<dependency >
<groupId > org.glassfish.jaxb</groupId>
<artifactId > jaxb-runtime</artifactId>
<version > 2.4.0-b180830.0438</version> <!-- $NO - MVN - MAN - VER$ --> <!-- TODO move to stable version when available -->
</dependency>
</dependencies>
2023-08-31 14:46:13 +02:00
</profile>
</profiles>
<build >
<plugins >
2022-03-28 11:43:26 +02:00
<plugin >
2023-08-31 14:46:13 +02:00
<groupId > org.springframework.boot</groupId>
<artifactId > spring-boot-maven-plugin</artifactId>
<executions >
<execution >
<goals >
<goal > repackage</goal>
</goals>
</execution>
</executions>
2022-03-28 11:43:26 +02:00
</plugin>
2023-08-31 14:46:13 +02:00
<plugin >
<groupId > org.apache.maven.plugins</groupId>
<artifactId > maven-compiler-plugin</artifactId>
2020-02-12 15:06:46 +01:00
<configuration >
2024-06-24 13:35:41 +02:00
<release > 17</release>
<encoding > UTF-8</encoding>
2020-02-12 15:06:46 +01:00
</configuration>
2023-08-31 14:46:13 +02:00
</plugin>
2020-02-12 15:06:46 +01:00
</plugins>
2023-08-31 14:46:13 +02:00
</build>
2020-02-12 15:06:46 +01:00
2023-08-31 14:46:13 +02:00
<dependencies >
<!-- Data Base -->
<dependency >
<groupId > org.mariadb.jdbc</groupId>
<artifactId > mariadb-java-client</artifactId>
</dependency>
2020-02-12 15:06:46 +01:00
2023-08-31 14:46:13 +02:00
<!-- MyBatis -->
<dependency >
<groupId > org.mybatis</groupId>
<artifactId > mybatis</artifactId>
<version > 3.5.6</version>
</dependency>
<dependency >
<groupId > org.mybatis.dynamic-sql</groupId>
<artifactId > mybatis-dynamic-sql</artifactId>
<version > 1.1.2</version>
</dependency>
<dependency >
<groupId > org.mybatis.spring.boot</groupId>
<artifactId > mybatis-spring-boot-starter</artifactId>
<version > 1.3.2</version>
</dependency>
<dependency >
<groupId > com.github.pagehelper</groupId>
<artifactId > pagehelper-spring-boot-starter</artifactId>
<version > 1.4.6</version>
</dependency>
2020-02-12 15:06:46 +01:00
2023-08-31 14:46:13 +02:00
<!-- Spring / Spring Boot -->
<dependency >
<groupId > org.springframework.boot</groupId>
<artifactId > spring-boot-starter-web</artifactId>
</dependency>
<dependency >
<groupId > org.springframework.boot</groupId>
<artifactId > spring-boot-starter-actuator</artifactId>
</dependency>
<dependency >
<groupId > org.springframework.boot</groupId>
<artifactId > spring-boot-starter-tomcat</artifactId>
</dependency>
<dependency >
<groupId > org.springframework.boot</groupId>
<artifactId > spring-boot-starter-jdbc</artifactId>
</dependency>
<dependency >
<groupId > org.springframework.boot</groupId>
<artifactId > spring-boot-starter-security</artifactId>
</dependency>
<dependency >
<groupId > org.springframework.boot</groupId>
<artifactId > spring-boot-starter-cache</artifactId>
</dependency>
<dependency >
<groupId > com.fasterxml.jackson.dataformat</groupId>
<artifactId > jackson-dataformat-xml</artifactId>
</dependency>
<dependency >
<groupId > org.springframework.boot</groupId>
<artifactId > spring-boot-starter-validation</artifactId>
</dependency>
2022-10-03 12:26:32 +02:00
2023-08-31 14:46:13 +02:00
<!-- NOTE since org.springframework.security.oauth is not fully migrated
2020-02-12 15:06:46 +01:00
to spring-boot-starter-security we have to declare a separate version here.
This refers to the latest version of spring-security-oauth2 and should be
compatible with the overall version of spring boot SEE: https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-2.0.0-M5-Release-Notes#oauth-20-support
TODO: once spring-security-oauth2 is fully migrated we should be able to
remove this dependency -->
2023-08-31 14:46:13 +02:00
<dependency >
<groupId > org.springframework.security.oauth</groupId>
<artifactId > spring-security-oauth2</artifactId>
<version > 2.3.6.RELEASE</version>
</dependency>
<dependency >
<groupId > org.springframework.security</groupId>
<artifactId > spring-security-jwt</artifactId>
<version > 1.0.9.RELEASE</version>
</dependency>
2022-04-14 16:13:40 +02:00
2023-08-31 14:46:13 +02:00
<!-- Springdoc - openapi -->
<dependency >
<groupId > org.springdoc</groupId>
<artifactId > springdoc-openapi-ui</artifactId>
<version > 1.5.10</version>
</dependency>
2020-02-12 15:06:46 +01:00
2023-08-31 14:46:13 +02:00
<!-- Flyway -->
<dependency >
<groupId > org.flywaydb</groupId>
<artifactId > flyway-core</artifactId>
<version > 7.8.2</version>
</dependency>
2020-02-25 11:56:33 +01:00
2023-08-31 14:46:13 +02:00
<!-- EHCache -->
<dependency >
<groupId > org.ehcache</groupId>
<artifactId > ehcache</artifactId>
</dependency>
<dependency >
<groupId > javax.cache</groupId>
<artifactId > cache-api</artifactId>
</dependency>
2020-02-12 15:06:46 +01:00
2023-08-31 14:46:13 +02:00
<!-- Apache HTTP -->
<dependency >
<groupId > org.apache.httpcomponents</groupId>
<artifactId > httpclient</artifactId>
</dependency>
2020-02-12 15:06:46 +01:00
2023-08-31 14:46:13 +02:00
<!-- Eclipse RAP / RWT -->
<dependency >
<groupId > org.eclipse.rap</groupId>
<artifactId > org.eclipse.rap.rwt</artifactId>
<version > 3.15.0</version>
</dependency>
<dependency >
<groupId > org.eclipse.rap</groupId>
<artifactId > org.eclipse.rap.fileupload</artifactId>
<version > 3.7.0</version>
</dependency>
2020-02-12 15:06:46 +01:00
2023-08-31 14:46:13 +02:00
<!-- Misc -->
<dependency >
<groupId > joda-time</groupId>
<artifactId > joda-time</artifactId>
<version > 2.10.9</version>
</dependency>
<dependency >
<groupId > com.fasterxml.jackson.datatype</groupId>
<artifactId > jackson-datatype-joda</artifactId>
</dependency>
<dependency >
<groupId > org.apache.commons</groupId>
<artifactId > commons-lang3</artifactId>
</dependency>
<dependency >
<groupId > org.cryptonode.jncryptor</groupId>
<artifactId > jncryptor</artifactId>
<version > 1.2.0</version>
</dependency>
<dependency >
<groupId > org.apache.commons</groupId>
<artifactId > commons-text</artifactId>
2024-06-24 13:23:19 +02:00
<version > 1.10.0</version>
2023-08-31 14:46:13 +02:00
</dependency>
<dependency >
<groupId > com.github.vladimir-bukhtoyarov</groupId>
<artifactId > bucket4j-core</artifactId>
<version > 4.10.0</version>
</dependency>
2024-06-24 13:23:19 +02:00
<dependency >
<groupId > io.jsonwebtoken</groupId>
<artifactId > jjwt</artifactId>
<version > 0.9.1</version>
</dependency>
2020-02-12 15:06:46 +01:00
2023-08-31 14:46:13 +02:00
<!-- Testing -->
<dependency >
<groupId > junit</groupId>
<artifactId > junit</artifactId>
<scope > test</scope>
</dependency>
<dependency >
<groupId > org.junit.vintage</groupId>
<artifactId > junit-vintage-engine</artifactId>
<scope > test</scope>
</dependency>
<dependency >
<groupId > org.springframework.boot</groupId>
<artifactId > spring-boot-starter-test</artifactId>
<scope > test</scope>
</dependency>
<dependency >
<groupId > org.springframework.security</groupId>
<artifactId > spring-security-test</artifactId>
<scope > test</scope>
</dependency>
<dependency >
<groupId > com.h2database</groupId>
<artifactId > h2</artifactId>
<scope > test</scope>
</dependency>
2020-02-12 15:06:46 +01:00
2023-08-31 14:46:13 +02:00
</dependencies>
2020-02-12 15:06:46 +01:00
2018-11-12 12:47:34 +01:00
</project>