build: add Maven wrapper and prebuilt release jar; ignore docs/superpowers

- Add ./mvnw wrapper (script-only) so the project builds/runs without a
  system Maven install.
- Add maven-shade-plugin producing a self-contained release/HauntedManor.jar
  (merges audio SPI services; no dependency-reduced-pom).
- Document running via ./mvnw and via the jar directly in the README.
- Ignore docs/superpowers/ (planning specs kept locally, untracked).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-06-02 09:51:04 +02:00
parent 675bf4c2ea
commit f8f7eb90f0
7 changed files with 544 additions and 6 deletions

View File

@@ -109,6 +109,36 @@
<artifactId>maven-surefire-plugin</artifactId>
<version>3.5.2</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>3.6.0</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<!-- Self-contained, runnable JAR with all dependencies bundled. -->
<outputFile>${project.basedir}/release/HauntedManor.jar</outputFile>
<createDependencyReducedPom>false</createDependencyReducedPom>
<transformers>
<!-- Default entry point: console version. GUI via -cp ... AppGui. -->
<transformer
implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<manifestEntries>
<Main-Class>thb.jeanluc.adventure.App</Main-Class>
</manifestEntries>
</transformer>
<!-- Merge META-INF/services so the OGG Vorbis SPI keeps working. -->
<transformer
implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/>
</transformers>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>