build: target Java 21 (LTS) instead of Java 25

maven.compiler.source/target were set to 25, but the newest language feature
actually used is List.getFirst() (SequencedCollection, Java 21). On a JDK 17 or
21 the project would not compile at all.

- Use maven.compiler.release=21 instead of the source/target pair
- README: update prerequisites, tech stack and test count
- .gitignore: ignore the Nextcloud sync file and release/*.jar
This commit is contained in:
2026-07-14 12:37:45 +02:00
parent 8e63f21c7d
commit e5c87015fa
4 changed files with 71 additions and 34 deletions

View File

@@ -9,8 +9,10 @@
<version>1.0-SNAPSHOT</version>
<properties>
<maven.compiler.source>25</maven.compiler.source>
<maven.compiler.target>25</maven.compiler.target>
<!-- Java 21 (LTS): the newest feature actually used is List.getFirst()
(SequencedCollection, Java 21). Building against an LTS keeps the
project compilable on any current JDK. -->
<maven.compiler.release>21</maven.compiler.release>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<jackson.version>2.18.2</jackson.version>