Skip to content

Java CI with Maven

Java CI with Maven #4

Workflow file for this run

# This workflow will build a Java project with Maven, and cache/restore any dependencies to improve the workflow execution time
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-java-with-maven
# This workflow uses actions that are not certified by GitHub.
# They are provided by a third-party and are governed by
# separate terms of service, privacy policy, and support
# documentation.
name: Java CI with Maven
on:
workflow_dispatch:
# push:
# branches: [ "mcp-dev" ]
# pull_request:
# branches: [ "mcp-dev" ]
jobs:
build:
# ubuntu-24.04 ships with kernel 6.17.
# https://github.com/actions/runner-images/blob/21cc988dd143f7b70b40fc749eff96faebf35795/images/ubuntu/Ubuntu2204-Readme.md
strategy:
matrix:
os: [ubuntu-24.04, macos-26]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- name: Set up JDK 21
uses: actions/setup-java@v4
with:
java-version: '21'
distribution: 'temurin'
cache: maven
- name: Install dependencies (Linux)
if: runner.os == 'Linux'
shell: bash
run: |
sudo apt-get update
sudo apt-get install -y \
auditd bison clang cmake curl flex fuse \
git ifupdown libaudit-dev libfuse-dev linux-headers-`uname -r` \
lsof pkg-config unzip uthash-dev wget
- name: Install dependencies (macOS)
if: runner.os == 'macOS'
shell: bash
run: |
brew install git pkg-config maven
- name: Build with Maven
run: mvn --batch-mode package --file pom.xml
# Optional: Uploads the full dependency graph to GitHub to improve the quality of Dependabot alerts this repository can receive
# - name: Update dependency graph
# uses: advanced-security/maven-dependency-submission-action@571e99aab1055c2e71a1e2309b9691de18d6b7d6