From 4aa7ed884a0d380a3e52ab6c49499e8d2fc6ccd0 Mon Sep 17 00:00:00 2001 From: Benjamin Marwell Date: Wed, 27 Aug 2025 20:44:14 +0200 Subject: [PATCH 1/3] [#519] module-info for JDK9+ profile --- api/src/main/java9/module-info.java | 3 +++ impl/src/main/java9/module-info.java | 3 +++ integration-tests/modular/pom.xml | 17 ++++++++++++ integration-tests/pom.xml | 39 ++++++++++++++++++++++++++++ pom.xml | 26 +++++++++++++++++++ 5 files changed, 88 insertions(+) create mode 100644 api/src/main/java9/module-info.java create mode 100644 impl/src/main/java9/module-info.java create mode 100644 integration-tests/modular/pom.xml create mode 100644 integration-tests/pom.xml diff --git a/api/src/main/java9/module-info.java b/api/src/main/java9/module-info.java new file mode 100644 index 000000000..c27879a7a --- /dev/null +++ b/api/src/main/java9/module-info.java @@ -0,0 +1,3 @@ +module io.jsonwebtoken { + +} diff --git a/impl/src/main/java9/module-info.java b/impl/src/main/java9/module-info.java new file mode 100644 index 000000000..8dbb3e57d --- /dev/null +++ b/impl/src/main/java9/module-info.java @@ -0,0 +1,3 @@ +module io.jsonwebtoken.impl { + requires io.jsonwebtoken; +} diff --git a/integration-tests/modular/pom.xml b/integration-tests/modular/pom.xml new file mode 100644 index 000000000..b7a205e45 --- /dev/null +++ b/integration-tests/modular/pom.xml @@ -0,0 +1,17 @@ + + + 4.0.0 + + + io.jsonwebtoken.its + jjwt-its + 0.14.0-SNAPSHOT + + + jjwt-its-modular + 0.14.0-SNAPSHOT + JJWT :: Integration-Tests + + diff --git a/integration-tests/pom.xml b/integration-tests/pom.xml new file mode 100644 index 000000000..68f84c9aa --- /dev/null +++ b/integration-tests/pom.xml @@ -0,0 +1,39 @@ + + + 4.0.0 + + + io.jsonwebtoken + jjwt-root + 0.14.0-SNAPSHOT + + + io.jsonwebtoken.its + jjwt-its + 0.14.0-SNAPSHOT + + JJWT :: Integration-Tests + pom + + + + true + + + + + + jdk9AndLater + + [1.9,) + + + modular + + + + + + diff --git a/pom.xml b/pom.xml index 0d41f7f26..9022546d8 100644 --- a/pom.xml +++ b/pom.xml @@ -147,6 +147,7 @@ api impl extensions + integration-tests tdjar bom @@ -649,6 +650,31 @@ -html5 ${test.addOpens}, --illegal-access=debug + + + + org.apache.maven.plugins + maven-compiler-plugin + + + compile-java21 + compile + + compile + + + 9 + + ${project.basedir}/src/main/java9 + + + ${project.build.outputDirectory}/META-INF/versions/9 + + + + + + jdk17AndLater From 977b67dfd80b2be6910f0a3606b702d10f27dc52 Mon Sep 17 00:00:00 2001 From: Benjamin Marwell Date: Wed, 27 Aug 2025 20:46:34 +0200 Subject: [PATCH 2/3] [#519] add license headers --- api/src/main/java9/module-info.java | 15 +++++++++++++++ impl/src/main/java9/module-info.java | 15 +++++++++++++++ 2 files changed, 30 insertions(+) diff --git a/api/src/main/java9/module-info.java b/api/src/main/java9/module-info.java index c27879a7a..e5bfb666c 100644 --- a/api/src/main/java9/module-info.java +++ b/api/src/main/java9/module-info.java @@ -1,3 +1,18 @@ +/* + * Copyright (C) 2025 jsonwebtoken.io + * + * 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. + */ module io.jsonwebtoken { } diff --git a/impl/src/main/java9/module-info.java b/impl/src/main/java9/module-info.java index 8dbb3e57d..155c2ebc2 100644 --- a/impl/src/main/java9/module-info.java +++ b/impl/src/main/java9/module-info.java @@ -1,3 +1,18 @@ +/* + * Copyright (C) 2025 jsonwebtoken.io + * + * 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. + */ module io.jsonwebtoken.impl { requires io.jsonwebtoken; } From 8320d2750b5c0b1b22082569a55f01d816366b3f Mon Sep 17 00:00:00 2001 From: Benjamin Marwell Date: Wed, 27 Aug 2025 20:58:56 +0200 Subject: [PATCH 3/3] [#519] add license headers to pom files * use `${maven.multiModuleProjectDirectory` so we do not have to define jjwt.root over and over. --- integration-tests/modular/pom.xml | 17 +++++++++++++++++ integration-tests/pom.xml | 17 +++++++++++++++++ pom.xml | 4 ++-- 3 files changed, 36 insertions(+), 2 deletions(-) diff --git a/integration-tests/modular/pom.xml b/integration-tests/modular/pom.xml index b7a205e45..93e23cee1 100644 --- a/integration-tests/modular/pom.xml +++ b/integration-tests/modular/pom.xml @@ -1,4 +1,21 @@ + diff --git a/integration-tests/pom.xml b/integration-tests/pom.xml index 68f84c9aa..6552d5d7e 100644 --- a/integration-tests/pom.xml +++ b/integration-tests/pom.xml @@ -1,4 +1,21 @@ + diff --git a/pom.xml b/pom.xml index 9022546d8..555eee10a 100644 --- a/pom.xml +++ b/pom.xml @@ -1,6 +1,6 @@