Files
lancedb/.github/workflows/java.yml
T
Divyanshu Singh 005a9a353a ci(java): run Java 11 and 17 builds in parallel with matrix strategy
Split the Java 17 workflow into a matrix for Java 11 and Java 17.
Run Checkstyle once in a dedicated Java 17 job and skip the lifecycle-bound Checkstyle execution in the matrix builds to avoid redundant work.

Closes #1331.
2026-10-29 18:33:13 +08:00

69 lines
1.8 KiB
YAML

# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
name: Build Java LanceDB Core
on:
push:
branches:
- main
paths:
- java/**
- .github/workflows/java.yml
pull_request:
paths:
- java/**
- .github/workflows/java.yml
permissions:
contents: read
jobs:
style-check:
runs-on: ubuntu-24.04
name: Style Check
defaults:
run:
working-directory: ./java
steps:
- name: Checkout repository
uses: actions/checkout@v6
- name: Set up Java 17
uses: actions/setup-java@v4
with:
distribution: temurin
java-version: 17
cache: "maven"
- name: Java Style Check
run: ./mvnw checkstyle:check
build-java:
runs-on: ubuntu-24.04
name: Build (Java ${{ matrix.java-version }})
strategy:
matrix:
java-version: [11, 17]
defaults:
run:
working-directory: ./java
steps:
- name: Checkout repository
uses: actions/checkout@v6
- name: Set up Java ${{ matrix.java-version }}
uses: actions/setup-java@v4
with:
distribution: temurin
java-version: ${{ matrix.java-version }}
cache: "maven"
- name: Build and install
run: ./mvnw clean install -Dcheckstyle.skip=true