I downloaded geoserver-main-latest-bin.zip dated 2025-11-04, unzipped on Windows, and tried to start the server but it fails. My JDK version is openjdk 21.0.8 2025-07-15 LTS. The error is
Error occurred during initialization of boot layer
java.lang.ExceptionInInitializerError
Caused by: java.lang.RuntimeException: java.desktop specified more than once to --patch-module
The patch-module thing refers perhaps to the line #139 of the startup.bat set MARLIN_ENABLER=--patch-module java.desktop="%MARLIN_JAR%"
For debugging purposes I opened a new command window for running startup.bat instead of double clicking the batch file in the file manager. Then I closed the program with Ctrl-C, but then I made an error by running startup.bat again from the same command window. Because of that the script was trying to add %MARLIN_ENABLER% for a second time into JAVA_OPTS on line 140 set JAVA_OPTS=%JAVA_OPTS% %MARLIN_ENABLER%
No problem now when running startup from a fresh command window each time, or by double clicking startup/shutdown in the file manager.