From 27718c0baf9f44030e6c2a96ea3869309c03eb33 Mon Sep 17 00:00:00 2001 From: Grzegorz Piwowarek Date: Wed, 9 Oct 2024 11:57:29 +0200 Subject: [PATCH] Full Java Platform Module System support for Java 9+ (#2846) As much as automatic modules do the job for now, jlink requires explicit module definition. --- pom.xml | 10 ++++++++-- vavr-benchmark/pom.xml | 2 +- vavr-match-processor/pom.xml | 36 +++++++++++++++++++++++++++-------- vavr-match/pom.xml | 33 ++++++++++++++++++++++++-------- vavr-test/pom.xml | 34 +++++++++++++++++++++++++-------- vavr/pom.xml | 37 ++++++++++++++++++++++++++++-------- 6 files changed, 117 insertions(+), 35 deletions(-) diff --git a/pom.xml b/pom.xml index 8cf0b0c40..33baedecf 100644 --- a/pom.xml +++ b/pom.xml @@ -26,7 +26,7 @@ We use these goals frequently to keep the dependencies and plugins up-to-date: io.vavr vavr-parent - 0.10.4 + 0.10.5-SNAPSHOT pom Vavr Parent Vavr (formerly called Javaslang) is an object-functional language extension to Java 8+. @@ -49,7 +49,7 @@ We use these goals frequently to keep the dependencies and plugins up-to-date: scm:git:git@github.com:vavr-io/vavr.git scm:git:git@github.com:vavr-io/vavr.git git@github.com:vavr-io/vavr.git - v0.10.4 + HEAD @@ -86,6 +86,7 @@ We use these goals frequently to keep the dependencies and plugins up-to-date: 3.5.1 3.3.1 3.4.1 + 1.2.2.Final 4.9.2 3.5.1 @@ -160,6 +161,11 @@ We use these goals frequently to keep the dependencies and plugins up-to-date: + + org.moditect + moditect-maven-plugin + ${moditect.version} + org.apache.maven.plugins maven-clean-plugin diff --git a/vavr-benchmark/pom.xml b/vavr-benchmark/pom.xml index d12e68bc4..8f4df9c22 100644 --- a/vavr-benchmark/pom.xml +++ b/vavr-benchmark/pom.xml @@ -3,7 +3,7 @@ io.vavr vavr-parent - 0.10.4 + 0.10.5-SNAPSHOT ../pom.xml vavr-benchmark diff --git a/vavr-match-processor/pom.xml b/vavr-match-processor/pom.xml index 4c0900ce9..428aa1847 100644 --- a/vavr-match-processor/pom.xml +++ b/vavr-match-processor/pom.xml @@ -3,7 +3,7 @@ io.vavr vavr-parent - 0.10.4 + 0.10.5-SNAPSHOT ../pom.xml vavr-match-processor @@ -53,13 +53,6 @@ org.apache.maven.plugins maven-jar-plugin - - - - io.vavr.match.processor - - - org.apache.maven.plugins @@ -69,6 +62,33 @@ org.apache.felix maven-bundle-plugin + + org.moditect + moditect-maven-plugin + + + add-module-infos + + add-module-info + + package + + 9 + + + module io.vavr.match.processor { + exports io.vavr.match; + exports io.vavr.match.generator; + exports io.vavr.match.model; + requires io.vavr.match; + } + + + true + + + + diff --git a/vavr-match/pom.xml b/vavr-match/pom.xml index 115bafc22..800d700d8 100644 --- a/vavr-match/pom.xml +++ b/vavr-match/pom.xml @@ -3,7 +3,7 @@ io.vavr vavr-parent - 0.10.4 + 0.10.5-SNAPSHOT ../pom.xml vavr-match @@ -24,13 +24,6 @@ org.apache.maven.plugins maven-jar-plugin - - - - io.vavr.match - - - org.apache.maven.plugins @@ -44,6 +37,30 @@ org.apache.felix maven-bundle-plugin + + org.moditect + moditect-maven-plugin + + + add-module-infos + + add-module-info + + package + + 9 + + + module io.vavr.match { + exports io.vavr.match.annotation; + } + + + true + + + + diff --git a/vavr-test/pom.xml b/vavr-test/pom.xml index ab5988cb3..15f283d8e 100644 --- a/vavr-test/pom.xml +++ b/vavr-test/pom.xml @@ -3,7 +3,7 @@ io.vavr vavr-parent - 0.10.4 + 0.10.5-SNAPSHOT ../pom.xml vavr-test @@ -60,13 +60,6 @@ org.apache.maven.plugins maven-jar-plugin - - - - io.vavr.test - - - org.apache.maven.plugins @@ -76,6 +69,31 @@ org.apache.felix maven-bundle-plugin + + org.moditect + moditect-maven-plugin + + + add-module-infos + + add-module-info + + package + + 9 + + + module io.vavr.test { + exports io.vavr.test; + requires io.vavr; + } + + + true + + + + diff --git a/vavr/pom.xml b/vavr/pom.xml index f784059a8..9ad0703b2 100644 --- a/vavr/pom.xml +++ b/vavr/pom.xml @@ -3,7 +3,7 @@ io.vavr vavr-parent - 0.10.4 + 0.10.5-SNAPSHOT ../pom.xml vavr @@ -75,13 +75,6 @@ org.apache.maven.plugins maven-jar-plugin - - - - io.vavr - - - org.apache.maven.plugins @@ -91,6 +84,34 @@ org.apache.felix maven-bundle-plugin + + org.moditect + moditect-maven-plugin + + + add-module-infos + + add-module-info + + package + + 9 + + + module io.vavr { + exports io.vavr; + exports io.vavr.collection; + exports io.vavr.control; + exports io.vavr.concurrent; + requires io.vavr.match; + } + + + true + + + +