From eedb4161c796248e13eef6fb846297f58a36317d Mon Sep 17 00:00:00 2001 From: Simon Massey <322608+simbo1905@users.noreply.github.com> Date: Wed, 20 May 2026 12:53:16 +0100 Subject: [PATCH 1/4] Issue #148 bump Docker build stage from JDK 24 to JDK 25 LTS --- .github/workflows/ci.yml | 4 ++-- jdt2jar/Dockerfile | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 120000b..25ef45b 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -13,11 +13,11 @@ jobs: - name: Checkout uses: actions/checkout@v4 - - name: Set up JDK 24 + - name: Set up JDK 25 uses: actions/setup-java@v4 with: distribution: oracle - java-version: '24' + java-version: '25' cache: 'maven' - name: Build and verify diff --git a/jdt2jar/Dockerfile b/jdt2jar/Dockerfile index 19433ff..e9c6781 100644 --- a/jdt2jar/Dockerfile +++ b/jdt2jar/Dockerfile @@ -1,6 +1,6 @@ # syntax=docker/dockerfile:1 -FROM eclipse-temurin:24-jdk AS build +FROM eclipse-temurin:25-jdk AS build WORKDIR /build COPY . . RUN ["./mvnw", "-pl", "jdt2jar", "-am", "package", "-DskipTests", "-Dsurefire.failIfNoSpecifiedTests=false"] From 3426bdab82c9c44714fc3bdb7d7b5718af7a4ab7 Mon Sep 17 00:00:00 2001 From: Simon Massey <322608+simbo1905@users.noreply.github.com> Date: Wed, 20 May 2026 13:02:45 +0100 Subject: [PATCH 2/4] Issue #148 fix WORKDIR in distroless stage, document docker cp fallback for macOS/Colima --- jdt2jar/Dockerfile | 1 + jdt2jar/README.md | 46 +++++++++++------- tmp/invalid.json | 1 + tmp/simple.jar | Bin 0 -> 92800 bytes tmp/simple.jtd.json | 1 + tmp/test.jdt.json | 110 ++++++++++++++++++++++++++++++++++++++++++++ tmp/valid.json | 1 + 7 files changed, 143 insertions(+), 17 deletions(-) create mode 100644 tmp/invalid.json create mode 100644 tmp/simple.jar create mode 100644 tmp/simple.jtd.json create mode 100644 tmp/test.jdt.json create mode 100644 tmp/valid.json diff --git a/jdt2jar/Dockerfile b/jdt2jar/Dockerfile index e9c6781..959a1f6 100644 --- a/jdt2jar/Dockerfile +++ b/jdt2jar/Dockerfile @@ -10,6 +10,7 @@ RUN ["mkdir", "-p", "/empty-work/tmp", "/empty-app"] FROM gcr.io/distroless/base-debian13:nonroot COPY --from=build --chown=65532:65532 /empty-work /work COPY --from=build --chown=65532:65532 /empty-app /app +WORKDIR /work ENV JAVA_TOOL_OPTIONS="-XX:+UseContainerSupport -XX:MaxRAMPercentage=75.0 -Djava.io.tmpdir=/work/tmp -XX:+ExitOnOutOfMemoryError" COPY --from=build /opt/jre /jre COPY --from=build /build/jdt2jar/target/jdt2jar.jar /app/jdt2jar.jar diff --git a/jdt2jar/README.md b/jdt2jar/README.md index 5768c7b..aa31f34 100644 --- a/jdt2jar/README.md +++ b/jdt2jar/README.md @@ -1,14 +1,14 @@ # jdt2jar -`jdt2jar` compiles a JTD schema into a standalone validator JAR at build time. The generated JAR runs on JDK 21+ with no JDK 24+ runtime dependency. +`jdt2jar` compiles a JTD schema into a standalone validator JAR at build time. The generated JAR runs on JDK 21+ with no JDK 25+ runtime dependency. ## Use Case This tool bridges the gap between the interpreter and codegen paths: - **Interpreter** ([`json-java21-jtd`](../json-java21-jtd/README.md)): ideal for infrequent config parsing — simple, no build step, runs on JDK 21+. -- **Codegen** ([`json-java21-jtd-codegen`](../json-java21-jtd-codegen/README.md)): ideal for repeated hot-path validation — ~9x faster, but requires JDK 24+ at runtime. -- **jdt2jar**: pre-compiles schemas into validator JARs at build time (using JDK 24+), then deploys them to any JDK 21+ runtime. Best for CI/CD pipelines, distroless containers, or environments where you want JIT-optimised validators without shipping a JDK 24+ runtime. +- **Codegen** ([`json-java21-jtd-codegen`](../json-java21-jtd-codegen/README.md)): ideal for repeated hot-path validation — ~9x faster, but requires JDK 25+ at runtime. +- **jdt2jar**: pre-compiles schemas into validator JARs at build time (using JDK 25+), then deploys them to any JDK 21+ runtime. Best for CI/CD pipelines, distroless containers, or environments where you want JIT-optimised validators without shipping a JDK 25+ runtime. > **Future note**: `java.util.json` has entered the JDK incubator (`jdk.incubator.json`). Once the API stabilises in the JDK itself, generated bytecode validators can depend directly on future JDK classes rather than this backport, making them even more efficient with zero library overhead. @@ -39,12 +39,12 @@ A minimal distroless container image is available for offline schema compilation docker pull ghcr.io/simbo1905/java.util.json.java21/jdt2jar:latest # Pull a specific release version -docker pull ghcr.io/simbo1905/java.util.json.java21/jdt2jar:2026.02.05 +docker pull ghcr.io/simbo1905/java.util.json.java21/jdt2jar:2026.05.20 ``` ### Build Locally -Requires Docker and JDK 24+ (for the build stage). Build from the repository root: +Requires Docker and JDK 25+ (for the build stage). Build from the repository root: ```bash docker build -t jdt2jar -f jdt2jar/Dockerfile . @@ -52,22 +52,34 @@ docker build -t jdt2jar -f jdt2jar/Dockerfile . ### Usage +The container's working directory is `/work`. Mount your local directory there, or use `docker cp` for environments where volume mounts are restricted (e.g., Colima on macOS). + +#### Option 1: Volume mount (Linux, Docker Desktop with file sharing enabled) + ```bash -# Show help -docker run --rm ghcr.io/simbo1905/java.util.json.java21/jdt2jar:latest --help +# bash / zsh +docker run --rm -v "$(pwd):/work" ghcr.io/simbo1905/java.util.json.java21/jdt2jar:latest schema.jtd.json --output schema-validator.jar --main -# Compile a schema to a validator JAR (using docker cp for file I/O) -cid=$(docker create --name jdt2jar-build ghcr.io/simbo1905/java.util.json.java21/jdt2jar:latest /work/person.jtd.json --output /work/person-validator.jar --main) -docker cp person.jtd.json jdt2jar-build:/work/person.jtd.json +# PowerShell +docker run --rm -v "${PWD}:/work" ghcr.io/simbo1905/java.util.json.java21/jdt2jar:latest schema.jtd.json --output schema-validator.jar --main + +# cmd.exe +docker run --rm -v "%CD%:/work" ghcr.io/simbo1905/java.util.json.java21/jdt2jar:latest schema.jtd.json --output schema-validator.jar --main +``` + +#### Option 2: docker cp (works everywhere, including Colima on macOS) + +```bash +# Compile a schema +cid=$(docker create --name jdt2jar-build ghcr.io/simbo1905/java.util.json.java21/jdt2jar:latest /work/schema.jtd.json --output /work/schema-validator.jar --main) +docker cp schema.jtd.json jdt2jar-build:/work/schema.jtd.json docker start -a jdt2jar-build -docker cp jdt2jar-build:/work/person-validator.jar . +docker cp jdt2jar-build:/work/schema-validator.jar . docker rm jdt2jar-build -# Validate a payload with the generated JAR -java -jar person-validator.jar --validate payload.json -# Or validate inside a container -cid=$(docker create --name jdt2jar-validate --entrypoint /jre/bin/java ghcr.io/simbo1905/java.util.json.java21/jdt2jar:latest -jar /work/person-validator.jar --validate /work/payload.json) -docker cp person-validator.jar jdt2jar-validate:/work/person-validator.jar +# Validate a payload +cid=$(docker create --name jdt2jar-validate --entrypoint /jre/bin/java ghcr.io/simbo1905/java.util.json.java21/jdt2jar:latest -jar /work/schema-validator.jar --validate /work/payload.json) +docker cp schema-validator.jar jdt2jar-validate:/work/schema-validator.jar docker cp payload.json jdt2jar-validate:/work/payload.json docker start -a jdt2jar-validate docker rm jdt2jar-validate @@ -76,7 +88,7 @@ docker rm jdt2jar-validate ### Image Properties - **Base**: `gcr.io/distroless/base-debian13:nonroot` -- **Runtime**: jlink-minimized JDK 24 (~40 MB) +- **Runtime**: jlink-minimized JDK 25 LTS (~40 MB) - **Total size**: ~111 MB disk / ~31 MB content - **User**: `nonroot` (uid 65532) - **Shell**: none (distroless) diff --git a/tmp/invalid.json b/tmp/invalid.json new file mode 100644 index 0000000..93e5ce6 --- /dev/null +++ b/tmp/invalid.json @@ -0,0 +1 @@ +{"name":123,"age":-1} diff --git a/tmp/simple.jar b/tmp/simple.jar new file mode 100644 index 0000000000000000000000000000000000000000..73e9fdf7530acf965a7b7a469ea616bcc9be6c67 GIT binary patch literal 92800 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 @kYL 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 literal 0 HcmV?d00001 diff --git a/tmp/simple.jtd.json b/tmp/simple.jtd.json new file mode 100644 index 0000000..d6555dd --- /dev/null +++ b/tmp/simple.jtd.json @@ -0,0 +1 @@ +{"properties":{"name":{"type":"string"},"age":{"type":"uint8"}}} diff --git a/tmp/test.jdt.json b/tmp/test.jdt.json new file mode 100644 index 0000000..3392faf --- /dev/null +++ b/tmp/test.jdt.json @@ -0,0 +1,110 @@ +{ + "definitions": { + "user": { + "properties": { + "id": { "type": "string" }, + "email": { "type": "string" }, + "displayName": { "type": "string" }, + "role": { + "enum": ["admin", "manager", "contributor"] + } + }, + "optionalProperties": { + "timezone": { "type": "string" } + } + }, + + "comment": { + "properties": { + "id": { "type": "string" }, + "authorId": { "type": "string" }, + "message": { "type": "string" }, + "createdAt": { "type": "timestamp" } + } + }, + + "taskEvent": { + "discriminator": "type", + "mapping": { + "created": { + "properties": { + "type": { "enum": ["created"] }, + "createdBy": { "type": "string" }, + "createdAt": { "type": "timestamp" } + } + }, + + "statusChanged": { + "properties": { + "type": { "enum": ["statusChanged"] }, + "from": { + "enum": ["todo", "in_progress", "blocked", "done"] + }, + "to": { + "enum": ["todo", "in_progress", "blocked", "done"] + }, + "changedBy": { "type": "string" }, + "changedAt": { "type": "timestamp" } + } + }, + + "commentAdded": { + "properties": { + "type": { "enum": ["commentAdded"] }, + "comment": { "ref": "comment" }, + "addedAt": { "type": "timestamp" } + } + } + } + } + }, + + "properties": { + "projectId": { "type": "string" }, + "name": { "type": "string" }, + + "owner": { + "ref": "user" + }, + + "tasks": { + "elements": { + "properties": { + "id": { "type": "string" }, + "title": { "type": "string" }, + + "status": { + "enum": ["todo", "in_progress", "blocked", "done"] + }, + + "assignee": { + "ref": "user" + }, + + "labels": { + "elements": { + "type": "string" + } + }, + + "activity": { + "elements": { + "ref": "taskEvent" + } + } + }, + + "optionalProperties": { + "description": { "type": "string" }, + "dueDate": { "type": "timestamp" }, + + "metadata": { + "values": { + "type": "string" + } + } + } + } + } + } +} diff --git a/tmp/valid.json b/tmp/valid.json new file mode 100644 index 0000000..3626743 --- /dev/null +++ b/tmp/valid.json @@ -0,0 +1 @@ +{"name":"Alice","age":30} From e76b1b7692e3f331d91934dfbb2491292573f813 Mon Sep 17 00:00:00 2001 From: Simon Massey <322608+simbo1905@users.noreply.github.com> Date: Wed, 20 May 2026 13:02:58 +0100 Subject: [PATCH 3/4] chore: remove accidental tmp test artifacts --- tmp/invalid.json | 1 - tmp/simple.jar | Bin 92800 -> 0 bytes tmp/simple.jtd.json | 1 - tmp/test.jdt.json | 110 -------------------------------------------- tmp/valid.json | 1 - 5 files changed, 113 deletions(-) delete mode 100644 tmp/invalid.json delete mode 100644 tmp/simple.jar delete mode 100644 tmp/simple.jtd.json delete mode 100644 tmp/test.jdt.json delete mode 100644 tmp/valid.json diff --git a/tmp/invalid.json b/tmp/invalid.json deleted file mode 100644 index 93e5ce6..0000000 --- a/tmp/invalid.json +++ /dev/null @@ -1 +0,0 @@ -{"name":123,"age":-1} diff --git a/tmp/simple.jar b/tmp/simple.jar deleted file mode 100644 index 73e9fdf7530acf965a7b7a469ea616bcc9be6c67..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 92800 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 @kYL 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 diff --git a/tmp/simple.jtd.json b/tmp/simple.jtd.json deleted file mode 100644 index d6555dd..0000000 --- a/tmp/simple.jtd.json +++ /dev/null @@ -1 +0,0 @@ -{"properties":{"name":{"type":"string"},"age":{"type":"uint8"}}} diff --git a/tmp/test.jdt.json b/tmp/test.jdt.json deleted file mode 100644 index 3392faf..0000000 --- a/tmp/test.jdt.json +++ /dev/null @@ -1,110 +0,0 @@ -{ - "definitions": { - "user": { - "properties": { - "id": { "type": "string" }, - "email": { "type": "string" }, - "displayName": { "type": "string" }, - "role": { - "enum": ["admin", "manager", "contributor"] - } - }, - "optionalProperties": { - "timezone": { "type": "string" } - } - }, - - "comment": { - "properties": { - "id": { "type": "string" }, - "authorId": { "type": "string" }, - "message": { "type": "string" }, - "createdAt": { "type": "timestamp" } - } - }, - - "taskEvent": { - "discriminator": "type", - "mapping": { - "created": { - "properties": { - "type": { "enum": ["created"] }, - "createdBy": { "type": "string" }, - "createdAt": { "type": "timestamp" } - } - }, - - "statusChanged": { - "properties": { - "type": { "enum": ["statusChanged"] }, - "from": { - "enum": ["todo", "in_progress", "blocked", "done"] - }, - "to": { - "enum": ["todo", "in_progress", "blocked", "done"] - }, - "changedBy": { "type": "string" }, - "changedAt": { "type": "timestamp" } - } - }, - - "commentAdded": { - "properties": { - "type": { "enum": ["commentAdded"] }, - "comment": { "ref": "comment" }, - "addedAt": { "type": "timestamp" } - } - } - } - } - }, - - "properties": { - "projectId": { "type": "string" }, - "name": { "type": "string" }, - - "owner": { - "ref": "user" - }, - - "tasks": { - "elements": { - "properties": { - "id": { "type": "string" }, - "title": { "type": "string" }, - - "status": { - "enum": ["todo", "in_progress", "blocked", "done"] - }, - - "assignee": { - "ref": "user" - }, - - "labels": { - "elements": { - "type": "string" - } - }, - - "activity": { - "elements": { - "ref": "taskEvent" - } - } - }, - - "optionalProperties": { - "description": { "type": "string" }, - "dueDate": { "type": "timestamp" }, - - "metadata": { - "values": { - "type": "string" - } - } - } - } - } - } -} diff --git a/tmp/valid.json b/tmp/valid.json deleted file mode 100644 index 3626743..0000000 --- a/tmp/valid.json +++ /dev/null @@ -1 +0,0 @@ -{"name":"Alice","age":30} From 9b093ed6e73d916fa9db386ca05cd4adf7c28c63 Mon Sep 17 00:00:00 2001 From: Simon Massey <322608+simbo1905@users.noreply.github.com> Date: Thu, 21 May 2026 07:59:57 +0100 Subject: [PATCH 4/4] Issue #148 add helper script for restricted volume mount environments, clean up README --- jdt2jar/README.md | 42 +++++++++++++++++------------------------- scripts/jdt2jar.sh | 25 +++++++++++++++++++++++++ 2 files changed, 42 insertions(+), 25 deletions(-) create mode 100755 scripts/jdt2jar.sh diff --git a/jdt2jar/README.md b/jdt2jar/README.md index aa31f34..8aef2d2 100644 --- a/jdt2jar/README.md +++ b/jdt2jar/README.md @@ -35,10 +35,7 @@ A minimal distroless container image is available for offline schema compilation ### Pre-built Image (GitHub Container Registry) ```bash -# Pull the latest image docker pull ghcr.io/simbo1905/java.util.json.java21/jdt2jar:latest - -# Pull a specific release version docker pull ghcr.io/simbo1905/java.util.json.java21/jdt2jar:2026.05.20 ``` @@ -52,39 +49,34 @@ docker build -t jdt2jar -f jdt2jar/Dockerfile . ### Usage -The container's working directory is `/work`. Mount your local directory there, or use `docker cp` for environments where volume mounts are restricted (e.g., Colima on macOS). +The container's working directory is `/work`. Mount your project directory there: + +```bash +docker run --rm -v "$(pwd):/work" jdt2jar:latest schema.jtd.json --output schema-validator.jar --main +``` -#### Option 1: Volume mount (Linux, Docker Desktop with file sharing enabled) +Validate a payload with the generated JAR: ```bash -# bash / zsh -docker run --rm -v "$(pwd):/work" ghcr.io/simbo1905/java.util.json.java21/jdt2jar:latest schema.jtd.json --output schema-validator.jar --main +java -jar schema-validator.jar --validate payload.json +``` -# PowerShell -docker run --rm -v "${PWD}:/work" ghcr.io/simbo1905/java.util.json.java21/jdt2jar:latest schema.jtd.json --output schema-validator.jar --main +Or validate inside a container: -# cmd.exe -docker run --rm -v "%CD%:/work" ghcr.io/simbo1905/java.util.json.java21/jdt2jar:latest schema.jtd.json --output schema-validator.jar --main +```bash +docker run --rm -v "$(pwd):/work" --entrypoint /jre/bin/java jdt2jar:latest -jar /work/schema-validator.jar --validate /work/payload.json ``` -#### Option 2: docker cp (works everywhere, including Colima on macOS) +### Helper Script + +For environments where volume mounts are restricted (e.g., Colima on macOS with projects outside `~/`), use the helper script: ```bash -# Compile a schema -cid=$(docker create --name jdt2jar-build ghcr.io/simbo1905/java.util.json.java21/jdt2jar:latest /work/schema.jtd.json --output /work/schema-validator.jar --main) -docker cp schema.jtd.json jdt2jar-build:/work/schema.jtd.json -docker start -a jdt2jar-build -docker cp jdt2jar-build:/work/schema-validator.jar . -docker rm jdt2jar-build - -# Validate a payload -cid=$(docker create --name jdt2jar-validate --entrypoint /jre/bin/java ghcr.io/simbo1905/java.util.json.java21/jdt2jar:latest -jar /work/schema-validator.jar --validate /work/payload.json) -docker cp schema-validator.jar jdt2jar-validate:/work/schema-validator.jar -docker cp payload.json jdt2jar-validate:/work/payload.json -docker start -a jdt2jar-validate -docker rm jdt2jar-validate +./scripts/jdt2jar.sh schema.jtd.json --output schema-validator.jar --main ``` +The script syncs source to `~/tmp/jdt2jar-work`, runs the container, and syncs output back. + ### Image Properties - **Base**: `gcr.io/distroless/base-debian13:nonroot` diff --git a/scripts/jdt2jar.sh b/scripts/jdt2jar.sh new file mode 100755 index 0000000..7f979cb --- /dev/null +++ b/scripts/jdt2jar.sh @@ -0,0 +1,25 @@ +#!/usr/bin/env bash +# jdt2jar helper script for environments where volume mounts are restricted +# (e.g., Colima on macOS with projects outside ~/). +# +# Usage: +# ./scripts/jdt2jar.sh [options...] +# +# Example: +# ./scripts/jdt2jar.sh .tmp/test.jtd.json --output .tmp/test.jar --main + +set -euo pipefail + +WORK_DIR="$HOME/tmp/jdt2jar-work" +IMAGE="${JDT2JAR_IMAGE:-jdt2jar:latest}" + +mkdir -p "$WORK_DIR" + +# Sync source (respecting .gitignore) +rsync -a --filter=':- .gitignore' --exclude='.git/' . "$WORK_DIR/" + +# Run jdt2jar in container +docker run --rm -v "$WORK_DIR:/work" "$IMAGE" "$@" + +# Sync output back (any new .jar or .java files in the work dir) +rsync -a --include='*.jar' --include='*.java' --exclude='*' "$WORK_DIR/" ./