Skip to content

Latest commit

 

History

History
103 lines (73 loc) · 2.88 KB

File metadata and controls

103 lines (73 loc) · 2.88 KB

Platform Setup

The repository uses JDK 27 and Maven 3.9+. Maven can be run through the repository's Maven Wrapper (mvnw or mvnw.cmd), so a separate Maven installation is optional. The helper scripts select JDK 27 for the current terminal session only.

They do not change the machine's global Java default.

Select JDK 27

macOS:

source scripts/use-java-27-mac.sh

Linux (Zsh or Bash; source the helper in your current shell):

source scripts/use-java-27-linux.sh

The switch applies to this shell session and its child processes; changing directories does not undo it. The SDKMAN default stays unchanged. Open a fresh terminal to use your default JDK again.

Windows with Git Bash:

source scripts/use-java-27-windows.sh

Windows with PowerShell:

. .\scripts\use-java-27-windows.ps1

If PowerShell blocks local scripts, allow them for the current session only:

Set-ExecutionPolicy -Scope Process Bypass
. .\scripts\use-java-27-windows.ps1

Custom JDK Locations

On macOS, the helper normally selects a registered JDK 27 through /usr/libexec/java_home. Pass a JDK home explicitly when it is installed in a custom location:

source scripts/use-java-27-mac.sh /Users/jrodolfo/Library/Java/JavaVirtualMachines/jdk-27.jdk/Contents/Home

The Linux helper searches JAVA27_HOME, JDK27_HOME, common JDK directories, and SDKMAN candidates. Pass a JDK path explicitly when needed:

source scripts/use-java-27-linux.sh /usr/lib/jvm/jdk-27

The Windows helpers search JAVA27_HOME, JDK27_HOME, C:\dev\apps, and common Program Files locations. Both Windows helpers also accept an explicit JDK path when needed:

source scripts/use-java-27-windows.sh /c/dev/apps/jdk-27
. .\scripts\use-java-27-windows.ps1 -JavaHome C:\dev\apps\jdk-27

Verify

java --version
javac --version
mvn --version

Optional Tools

These tools are optional if you run Maven commands directly, but they are needed for the repository-level convenience and documentation targets:

  • GNU Make runs the repository-level targets such as make run-tests, make generate-docs, make run-demos, and make check-release. Maven remains usable without Make.
  • Node.js runs the local documentation navigation audit used by make audit-docs, make check-docs, and make check-release.
  • lychee checks Markdown and HTML links for make check-links, make check-docs, and make check-release.

Install each tool using your operating system's package manager or the linked official installation instructions. Verify the optional tools with:

make --version
node --version
lychee --version

Use make check-release for the complete local validation gate.