🏗️ Split project into client and server components
authorDavid Roden <github-a8in@qsheltier.de>
Thu, 23 Jan 2025 18:51:08 +0000 (19:51 +0100)
committerDavid Roden <github-a8in@qsheltier.de>
Sat, 25 Jan 2025 09:27:37 +0000 (10:27 +0100)
Also, move to Java 21 and using toolchains.

client/pom.xml [new file with mode: 0644]
pom.xml
server/pom.xml [new file with mode: 0644]

diff --git a/client/pom.xml b/client/pom.xml
new file mode 100644 (file)
index 0000000..4cd574c
--- /dev/null
@@ -0,0 +1,17 @@
+<?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>
+
+       <parent>
+               <groupId>de.qsheltier</groupId>
+               <artifactId>msta</artifactId>
+               <version>0.1-SNAPSHOT</version>
+       </parent>
+
+       <artifactId>msta-client</artifactId>
+
+       <name>MSTA – Client</name>
+       <description>Manual Software Testing Avoidance – Client Component</description>
+
+</project>
diff --git a/pom.xml b/pom.xml
index 6d60724..4d51132 100644 (file)
--- a/pom.xml
+++ b/pom.xml
@@ -6,13 +6,14 @@
        <groupId>de.qsheltier</groupId>
        <artifactId>msta</artifactId>
        <version>0.1-SNAPSHOT</version>
+       <packaging>pom</packaging>
 
-       <name>msta</name>
+       <name>MSTA</name>
        <description>Manual Software Testing Avoidance</description>
 
        <properties>
                <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-               <maven.compiler.release>17</maven.compiler.release>
+               <maven.compiler.release>21</maven.compiler.release>
        </properties>
 
        <dependencyManagement>
                                <type>pom</type>
                                <scope>import</scope>
                        </dependency>
+                       <dependency>
+                               <groupId>org.hamcrest</groupId>
+                               <artifactId>hamcrest</artifactId>
+                               <version>3.0</version>
+                               <scope>test</scope>
+                       </dependency>
                </dependencies>
        </dependencyManagement>
 
                        <artifactId>junit-jupiter-params</artifactId>
                        <scope>test</scope>
                </dependency>
+               <dependency>
+                       <groupId>org.hamcrest</groupId>
+                       <artifactId>hamcrest</artifactId>
+                       <scope>test</scope>
+               </dependency>
        </dependencies>
 
        <build>
                <pluginManagement><!-- lock down plugins versions to avoid using Maven defaults (may be moved to parent pom) -->
                        <plugins>
                                <plugin>
+                                       <groupId>org.apache.maven.plugins</groupId>
+                                       <artifactId>maven-toolchains-plugin</artifactId>
+                                       <version>3.1.0</version>
+                                       <executions>
+                                               <execution>
+                                                       <phase>validate</phase>
+                                                       <goals>
+                                                               <goal>toolchain</goal>
+                                                       </goals>
+                                               </execution>
+                                       </executions>
+                                       <configuration>
+                                               <toolchains>
+                                                       <jdk>
+                                                               <version>21</version>
+                                                               <vendor>temurin</vendor>
+                                                       </jdk>
+                                               </toolchains>
+                                       </configuration>
+                               </plugin>
+                               <plugin>
                                        <artifactId>maven-clean-plugin</artifactId>
                                        <version>3.4.0</version>
                                </plugin>
                                </plugin>
                        </plugins>
                </pluginManagement>
+               <plugins>
+                       <plugin>
+                               <groupId>org.apache.maven.plugins</groupId>
+                               <artifactId>maven-toolchains-plugin</artifactId>
+                       </plugin>
+               </plugins>
        </build>
+
+
+       <modules>
+               <module>server</module>
+               <module>client</module>
+       </modules>
 </project>
diff --git a/server/pom.xml b/server/pom.xml
new file mode 100644 (file)
index 0000000..bb53ad9
--- /dev/null
@@ -0,0 +1,17 @@
+<?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>
+
+       <parent>
+               <groupId>de.qsheltier</groupId>
+               <artifactId>msta</artifactId>
+               <version>0.1-SNAPSHOT</version>
+       </parent>
+
+       <artifactId>msta-server</artifactId>
+
+       <name>MSTA – Server</name>
+       <description>Manual Software Testing Avoidance – Server Component</description>
+
+</project>