name: Java PR Builder on: pull_request: branches: [ master ] types: [ opened, reopened, synchronize ] permissions: contents: read jobs: build-and-analyze: name: Build on JDK 21 runs-on: ubuntu-22.04 steps: - name: Checkout Code uses: actions/checkout@v4 - name: Set up JDK 21 uses: actions/setup-java@v4 with: java-version: '21' distribution: 'temurin' cache: 'maven' - name: Cache local Maven repository uses: actions/cache@v4 with: path: ~/.m2/repository key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }} restore-keys: | ${{ runner.os }}-maven- # Some tests need screen access - name: Install xvfb run: sudo apt-get install -y xvfb - name: Build with Maven run: xvfb-run ./mvnw clean verify