225 lines
8.1 KiB
XML
225 lines
8.1 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<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>
|
|
|
|
<groupId>de.assecutor.emulatorstation</groupId>
|
|
<artifactId>emulatorstation</artifactId>
|
|
<version>0.9</version>
|
|
|
|
<packaging>jar</packaging>
|
|
|
|
<properties>
|
|
<java.version>17</java.version>
|
|
<vaadin.version>24.7.6</vaadin.version>
|
|
<archunit.version>1.4.1</archunit.version>
|
|
</properties>
|
|
|
|
<parent>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-parent</artifactId>
|
|
<version>3.4.5</version>
|
|
<relativePath/>
|
|
</parent>
|
|
|
|
<repositories>
|
|
<repository>
|
|
<id>vaadin-directory</id>
|
|
<url>https://maven.vaadin.com/vaadin-addons</url>
|
|
</repository>
|
|
</repositories>
|
|
|
|
<dependencyManagement>
|
|
<dependencies>
|
|
<dependency>
|
|
<groupId>com.vaadin</groupId>
|
|
<artifactId>vaadin-bom</artifactId>
|
|
<version>${vaadin.version}</version>
|
|
<type>pom</type>
|
|
<scope>import</scope>
|
|
</dependency>
|
|
</dependencies>
|
|
</dependencyManagement>
|
|
|
|
<dependencies>
|
|
<!-- Vaadin -->
|
|
<dependency>
|
|
<groupId>com.vaadin</groupId>
|
|
<!-- Replace artifactId with vaadin-core to use only free components -->
|
|
<artifactId>vaadin</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.vaadin</groupId>
|
|
<artifactId>vaadin-spring-boot-starter</artifactId>
|
|
</dependency>
|
|
|
|
<!-- Persistence -->
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-data-jpa</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<!-- Replace with the database you will be using in production -->
|
|
<groupId>com.h2database</groupId>
|
|
<artifactId>h2</artifactId>
|
|
<scope>runtime</scope>
|
|
</dependency>
|
|
|
|
<!-- Additional Spring Dependencies -->
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-actuator</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-validation</artifactId>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-devtools</artifactId>
|
|
<optional>true</optional>
|
|
</dependency>
|
|
|
|
<!-- Testing -->
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-starter-test</artifactId>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.testcontainers</groupId>
|
|
<artifactId>junit-jupiter</artifactId>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-testcontainers</artifactId>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
<dependency>
|
|
<groupId>com.tngtech.archunit</groupId>
|
|
<artifactId>archunit-junit5</artifactId>
|
|
<version>${archunit.version}</version>
|
|
<scope>test</scope>
|
|
</dependency>
|
|
</dependencies>
|
|
|
|
<build>
|
|
<defaultGoal>spring-boot:run</defaultGoal>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.springframework.boot</groupId>
|
|
<artifactId>spring-boot-maven-plugin</artifactId>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>com.diffplug.spotless</groupId>
|
|
<artifactId>spotless-maven-plugin</artifactId>
|
|
<version>2.44.4</version>
|
|
<configuration>
|
|
<java>
|
|
<toggleOffOn/>
|
|
<eclipse>
|
|
<version>4.35</version>
|
|
<file>${project.basedir}/eclipse-formatter.xml</file>
|
|
</eclipse>
|
|
</java>
|
|
<typescript>
|
|
<includes>
|
|
<include>src/main/frontend/**/*.ts</include>
|
|
<include>src/main/frontend/**/*.tsx</include>
|
|
</includes>
|
|
<excludes>
|
|
<exclude>src/main/frontend/generated/**</exclude>
|
|
</excludes>
|
|
<prettier>
|
|
<prettierVersion>3.3.3</prettierVersion>
|
|
<configFile>${project.basedir}/.prettierrc.json</configFile>
|
|
</prettier>
|
|
</typescript>
|
|
</configuration>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>com.vaadin</groupId>
|
|
<artifactId>vaadin-maven-plugin</artifactId>
|
|
<version>${vaadin.version}</version>
|
|
<executions>
|
|
<execution>
|
|
<goals>
|
|
<goal>prepare-frontend</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-wrapper-plugin</artifactId>
|
|
<version>3.3.2</version>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
|
|
<profiles>
|
|
<profile>
|
|
<id>production</id>
|
|
<dependencies>
|
|
<!-- Exclude development dependencies from production -->
|
|
<dependency>
|
|
<groupId>com.vaadin</groupId>
|
|
<artifactId>vaadin-core</artifactId>
|
|
<exclusions>
|
|
<exclusion>
|
|
<groupId>com.vaadin</groupId>
|
|
<artifactId>vaadin-dev</artifactId>
|
|
</exclusion>
|
|
</exclusions>
|
|
</dependency>
|
|
</dependencies>
|
|
<build>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>com.vaadin</groupId>
|
|
<artifactId>vaadin-maven-plugin</artifactId>
|
|
<version>${vaadin.version}</version>
|
|
<executions>
|
|
<execution>
|
|
<goals>
|
|
<goal>build-frontend</goal>
|
|
</goals>
|
|
<phase>compile</phase>
|
|
</execution>
|
|
</executions>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
</profile>
|
|
<profile>
|
|
<id>integration-test</id>
|
|
<build>
|
|
<plugins>
|
|
<plugin>
|
|
<groupId>org.apache.maven.plugins</groupId>
|
|
<artifactId>maven-failsafe-plugin</artifactId>
|
|
<executions>
|
|
<execution>
|
|
<goals>
|
|
<goal>integration-test</goal>
|
|
<goal>verify</goal>
|
|
</goals>
|
|
</execution>
|
|
</executions>
|
|
<configuration>
|
|
<trimStackTrace>false</trimStackTrace>
|
|
<enableAssertions>true</enableAssertions>
|
|
</configuration>
|
|
</plugin>
|
|
</plugins>
|
|
</build>
|
|
</profile>
|
|
</profiles>
|
|
</project>
|