#! /usr/bin/env bash # Copyright (c) 2026 QPQ AG . All rights reserved. # SPDX-License-Identifier: AGPL-3.0-or-later OR LicenseRef-QPQ-Commercial set -e abs_dir="$(cd -P $(dirname ${BASH_SOURCE}) && pwd)" project_dir="$(dirname $abs_dir)" # Prefer Homebrew OpenJDK when /usr/bin/java is a macOS stub. if [[ -x /opt/homebrew/opt/openjdk/bin/javac ]]; then export PATH="/opt/homebrew/opt/openjdk/bin:$PATH" elif [[ -x /opt/homebrew/opt/openjdk@25/bin/javac ]]; then export PATH="/opt/homebrew/opt/openjdk@25/bin:$PATH" elif [[ -x /opt/homebrew/opt/openjdk@21/bin/javac ]]; then export PATH="/opt/homebrew/opt/openjdk@21/bin:$PATH" fi # Clean rm -rf "$project_dir/build/classes/*" rm -f "$project_dir/Testinator.class" # Build every .java file find "$project_dir/src/main/java" -name "*.java" | xargs javac \ --release 21 \ -d "$project_dir/build/classes" # Build the Testinator thingy javac -cp "build/classes" -d build src/Testinator.java echo "Bytecode in $project_dir/build/classes/"