From f226dfe804d8c78535a415502a6a949264591071 Mon Sep 17 00:00:00 2001 From: Alexander Hellwig Date: Tue, 28 Oct 2025 12:43:02 +0100 Subject: [PATCH 1/5] Update to Java 21 --- .github/workflows/deploy_snapshot.yml | 2 +- .github/workflows/test_branch.yml | 2 +- build.gradle | 8 ++++++-- gradle.properties | 2 +- 4 files changed, 9 insertions(+), 5 deletions(-) diff --git a/.github/workflows/deploy_snapshot.yml b/.github/workflows/deploy_snapshot.yml index 0adf95b..a2292e6 100644 --- a/.github/workflows/deploy_snapshot.yml +++ b/.github/workflows/deploy_snapshot.yml @@ -15,7 +15,7 @@ on: types: [ trigger_after_upstream_deploy ] env: - GRADLE_VERSION: 7.4 # Gradle version used + GRADLE_VERSION: 8.5 # Gradle version used GRADLE_CLI_OPTS: "-Pci --build-cache --refresh-dependencies" # CLI options passed to Gradle GRADLE_BUILD_ACTION_CACHE_KEY_JOB: "test-cache-${{ github.head_ref }}.${{ github.sha }}" diff --git a/.github/workflows/test_branch.yml b/.github/workflows/test_branch.yml index 4419306..384f138 100644 --- a/.github/workflows/test_branch.yml +++ b/.github/workflows/test_branch.yml @@ -12,7 +12,7 @@ on: branches-ignore: [ "dev" ] # Do not run this on the default branch env: - GRADLE_VERSION: 7.4 # Gradle version used + GRADLE_VERSION: 8.5 # Gradle version used GRADLE_CLI_OPTS: "-Pci --build-cache --refresh-dependencies" # CLI options passed to Gradle GRADLE_BUILD_ACTION_CACHE_KEY_JOB: "test-cache-${{ github.head_ref }}.${{ github.sha }}" diff --git a/build.gradle b/build.gradle index 55ec6d9..e99b387 100644 --- a/build.gradle +++ b/build.gradle @@ -5,11 +5,15 @@ plugins { id 'java-library' id 'maven-publish' id "de.monticore.generator" version "$mc_version" // MontiCore Plugin - id "com.github.johnrengelman.shadow" version "$shadow_plugin_version" + id "com.gradleup.shadow" version "$shadow_plugin_version" id 'jacoco' id "io.github.themrmilchmann.ecj" version "0.2.0" } +ecj { + compilerVersion = "3.43.0" +} + def grammarDir = "src/main/grammars" group = "de.monticore.lang" @@ -31,7 +35,7 @@ sourceSets { java { toolchain { - languageVersion = JavaLanguageVersion.of(11) + languageVersion = JavaLanguageVersion.of(21) } // Deprecated feature, published for compatibility reasons registerFeature('grammars') { diff --git a/gradle.properties b/gradle.properties index af45df0..82b3de2 100644 --- a/gradle.properties +++ b/gradle.properties @@ -5,7 +5,7 @@ mc_version=7.9.0-SNAPSHOT mlc_version=7.8.0-SNAPSHOT version=7.9.0-SNAPSHOT useLocalRepo=false -shadow_plugin_version=7.1.2 +shadow_plugin_version=8.3.9 guava_version=31.1-jre commons_lang3_version=3.12.0 commons_cli_version=1.5.0 From 69f174b9611af8a37a6b9216a9cb4577cc3242b9 Mon Sep 17 00:00:00 2001 From: Alexander Hellwig Date: Tue, 28 Oct 2025 12:50:02 +0100 Subject: [PATCH 2/5] Actions: Try to install Java 21 --- .github/workflows/deploy_snapshot.yml | 10 ++++++++++ .github/workflows/test_branch.yml | 5 +++++ 2 files changed, 15 insertions(+) diff --git a/.github/workflows/deploy_snapshot.yml b/.github/workflows/deploy_snapshot.yml index a2292e6..f755388 100644 --- a/.github/workflows/deploy_snapshot.yml +++ b/.github/workflows/deploy_snapshot.yml @@ -29,6 +29,11 @@ jobs: steps: - name: Checkout project sources uses: actions/checkout@v4 + - name: Setup Java + uses: actions/setup-java@v4 + with: + distribution: 'temurin' + java-version: 21 - name: Setup Gradle uses: gradle/actions/setup-gradle@v4 with: @@ -45,6 +50,11 @@ jobs: steps: - name: Checkout project sources uses: actions/checkout@v4 + - name: Setup Java + uses: actions/setup-java@v4 + with: + distribution: 'temurin' + java-version: 21 - name: Setup Gradle uses: gradle/actions/setup-gradle@v4 with: diff --git a/.github/workflows/test_branch.yml b/.github/workflows/test_branch.yml index 384f138..f9a00dc 100644 --- a/.github/workflows/test_branch.yml +++ b/.github/workflows/test_branch.yml @@ -26,6 +26,11 @@ jobs: steps: - name: Checkout project sources uses: actions/checkout@v4 + - name: Setup Java + uses: actions/setup-java@v4 + with: + distribution: 'temurin' + java-version: 21 - name: Setup Gradle uses: gradle/actions/setup-gradle@v4 with: From 3303fc2490a765e506ff00e78b60dd49b254d571 Mon Sep 17 00:00:00 2001 From: Alexander Hellwig Date: Wed, 4 Mar 2026 13:48:11 +0100 Subject: [PATCH 3/5] Update doc to new Java and Gradle version --- README.md | 4 ++-- src/main/java/de/monticore/od2plantuml/REPORT.md | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 91de8ee..52b1d44 100644 --- a/README.md +++ b/README.md @@ -54,7 +54,7 @@ used when processing models. To this effect, it provides funcionality for * storing symbols in symbol files, * ,and loading symbols from symbol files. -The requirements for building and using the OD tool are that Java 11, Git, and Gradle are +The requirements for building and using the OD tool are that Java 21, Git, and Gradle 8.4 are installed and available for use in Bash. The following subsection describes how to download the tool. Then, this document describes how @@ -76,7 +76,7 @@ Alternatively, the tools can be built from source code. ### Prerequisites -To build the project, it is required to install a Java 11 JDK and git. +To build the project, it is required to install a Java 21 JDK and git. #### Step 1: Clone Project with git diff --git a/src/main/java/de/monticore/od2plantuml/REPORT.md b/src/main/java/de/monticore/od2plantuml/REPORT.md index 07cd4b8..fb52831 100644 --- a/src/main/java/de/monticore/od2plantuml/REPORT.md +++ b/src/main/java/de/monticore/od2plantuml/REPORT.md @@ -82,8 +82,8 @@ foo--> "blub" bar ## Usage of ODPlantUMLTool ### Dependencies -* Java 11 (or higher) -* Gradle 7.5 (or higher) +* Java 21 (or higher) +* Gradle 8.4 (or higher) ### Installation of the project * Clone the project from Gitlab From a0dd1f251f2e76e885f968d6847b65805d63c480 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alex=20L=C3=BCpges?= Date: Tue, 10 Mar 2026 14:59:54 +0100 Subject: [PATCH 4/5] use env --- .github/workflows/deploy_snapshot.yml | 5 +++-- .github/workflows/test_branch.yml | 3 ++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/.github/workflows/deploy_snapshot.yml b/.github/workflows/deploy_snapshot.yml index f755388..7f04315 100644 --- a/.github/workflows/deploy_snapshot.yml +++ b/.github/workflows/deploy_snapshot.yml @@ -16,6 +16,7 @@ on: env: GRADLE_VERSION: 8.5 # Gradle version used + JAVA_VERSION: 21 # Java version used GRADLE_CLI_OPTS: "-Pci --build-cache --refresh-dependencies" # CLI options passed to Gradle GRADLE_BUILD_ACTION_CACHE_KEY_JOB: "test-cache-${{ github.head_ref }}.${{ github.sha }}" @@ -33,7 +34,7 @@ jobs: uses: actions/setup-java@v4 with: distribution: 'temurin' - java-version: 21 + java-version: ${{ env.JAVA_VERSION }} - name: Setup Gradle uses: gradle/actions/setup-gradle@v4 with: @@ -54,7 +55,7 @@ jobs: uses: actions/setup-java@v4 with: distribution: 'temurin' - java-version: 21 + java-version: ${{ env.JAVA_VERSION }} - name: Setup Gradle uses: gradle/actions/setup-gradle@v4 with: diff --git a/.github/workflows/test_branch.yml b/.github/workflows/test_branch.yml index f9a00dc..aeb5d8a 100644 --- a/.github/workflows/test_branch.yml +++ b/.github/workflows/test_branch.yml @@ -13,6 +13,7 @@ on: env: GRADLE_VERSION: 8.5 # Gradle version used + JAVA_VERSION: 21 # Java version used GRADLE_CLI_OPTS: "-Pci --build-cache --refresh-dependencies" # CLI options passed to Gradle GRADLE_BUILD_ACTION_CACHE_KEY_JOB: "test-cache-${{ github.head_ref }}.${{ github.sha }}" @@ -30,7 +31,7 @@ jobs: uses: actions/setup-java@v4 with: distribution: 'temurin' - java-version: 21 + java-version: ${{ env.JAVA_VERSION }} - name: Setup Gradle uses: gradle/actions/setup-gradle@v4 with: From 436270827bf377e1ef09d7af147370d98f505e17 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alex=20L=C3=BCpges?= Date: Tue, 10 Mar 2026 15:00:59 +0100 Subject: [PATCH 5/5] Apply suggestions from code review --- README.md | 2 +- src/main/java/de/monticore/od2plantuml/REPORT.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 52b1d44..8ea2522 100644 --- a/README.md +++ b/README.md @@ -54,7 +54,7 @@ used when processing models. To this effect, it provides funcionality for * storing symbols in symbol files, * ,and loading symbols from symbol files. -The requirements for building and using the OD tool are that Java 21, Git, and Gradle 8.4 are +The requirements for building and using the OD tool are that Java 21, Git, and Gradle 8.5 are installed and available for use in Bash. The following subsection describes how to download the tool. Then, this document describes how diff --git a/src/main/java/de/monticore/od2plantuml/REPORT.md b/src/main/java/de/monticore/od2plantuml/REPORT.md index fb52831..0004fca 100644 --- a/src/main/java/de/monticore/od2plantuml/REPORT.md +++ b/src/main/java/de/monticore/od2plantuml/REPORT.md @@ -83,7 +83,7 @@ foo--> "blub" bar ### Dependencies * Java 21 (or higher) -* Gradle 8.4 (or higher) +* Gradle 8.5 (or higher) ### Installation of the project * Clone the project from Gitlab