name: Java CI on: [push, pull_request] jobs: build: runs-on: ${{ matrix.os }} timeout-minutes: 15 strategy: matrix: os: [ubuntu-24.04, macOS-13, windows-2022] java: ['17', '21', '23'] distribution: ['temurin'] gradle: ['7.3', '8.13'] exclude: # Java 21+ requires Gradle 8.5+ - java: '21' gradle: '7.3' - java: '23' gradle: '7.3' fail-fast: false name: ${{ matrix.os }} JDK ${{ matrix.java }}.${{ matrix.distribution }} Gradle ${{ matrix.gradle }} steps: - name: Git checkout uses: actions/checkout@v4 - name: Set up JDK uses: actions/setup-java@v4 with: distribution: ${{ matrix.distribution }} java-version: ${{ matrix.java }} - name: Set up Gradle uses: gradle/actions/setup-gradle@v4 with: gradle-version: ${{ matrix.gradle }} - name: Run Gradle run: gradle build bitcoinj-wallettemplate:installDist bitcoinj-wallettemplate:jlink --init-script build-scan-agree.gradle --scan --info --stacktrace - name: Upload Test Results and Reports uses: actions/upload-artifact@v4 if: always() with: name: bitcoinj-core-test-results-jdk${{ matrix.java }}-${{ matrix.os }}-${{ matrix.gradle }} path: | base/build/reports/tests/test/ base/build/test-results/test/ core/build/reports/tests/test/ core/build/test-results/test/ wallettool/build/reports/tests/test/ wallettool/build/test-results/test/ integration-test/build/reports/tests/test/ integration-test/build/test-results/test/