diff --git a/avaje-jex-freemarker/pom.xml b/avaje-jex-freemarker/pom.xml
index 5d5fb047..9d917387 100644
--- a/avaje-jex-freemarker/pom.xml
+++ b/avaje-jex-freemarker/pom.xml
@@ -4,7 +4,7 @@
avaje-jex-parent
io.avaje
- 3.0-RC10
+ 3.0-RC11
avaje-jex-freemarker
@@ -18,7 +18,6 @@
io.avaje
avaje-jex
- ${project.version}
provided
@@ -28,6 +27,12 @@
${freemarker.version}
+
+ io.avaje
+ avaje-spi-service
+ provided
+
+
com.fasterxml.jackson.core
@@ -39,7 +44,6 @@
io.avaje
avaje-jex-test
- ${project.version}
test
diff --git a/avaje-jex-htmx/pom.xml b/avaje-jex-htmx/pom.xml
index b936d06f..2e13303f 100644
--- a/avaje-jex-htmx/pom.xml
+++ b/avaje-jex-htmx/pom.xml
@@ -6,25 +6,22 @@
io.avaje
avaje-jex-parent
- 3.0-RC10
+ 3.0-RC11
avaje-jex-htmx
- 2.8
io.avaje
avaje-htmx-api
- ${avaje-htmx-api.version}
io.avaje
avaje-jex
- ${project.version}
diff --git a/avaje-jex-mustache/pom.xml b/avaje-jex-mustache/pom.xml
index f1e28768..374c4431 100644
--- a/avaje-jex-mustache/pom.xml
+++ b/avaje-jex-mustache/pom.xml
@@ -4,7 +4,7 @@
avaje-jex-parent
io.avaje
- 3.0-RC10
+ 3.0-RC11
avaje-jex-mustache
@@ -22,6 +22,13 @@
provided
+
+ io.avaje
+ avaje-spi-service
+ 2.8
+ provided
+
+
com.github.spullara.mustache.java
compiler
@@ -43,7 +50,6 @@
${project.version}
test
-
diff --git a/avaje-jex-static-content/pom.xml b/avaje-jex-static-content/pom.xml
index f6cd0144..b4e56196 100644
--- a/avaje-jex-static-content/pom.xml
+++ b/avaje-jex-static-content/pom.xml
@@ -5,7 +5,7 @@
io.avaje
avaje-jex-parent
- 3.0-RC10
+ 3.0-RC11
avaje-jex-static-content
diff --git a/avaje-jex-test/pom.xml b/avaje-jex-test/pom.xml
index 7baac1da..656525d2 100644
--- a/avaje-jex-test/pom.xml
+++ b/avaje-jex-test/pom.xml
@@ -4,7 +4,7 @@
avaje-jex-parent
io.avaje
- 3.0-RC10
+ 3.0-RC11
avaje-jex-test
@@ -14,21 +14,24 @@
io.avaje
avaje-jex
- ${project.version}
provided
+
+ io.avaje
+ junit
+ 1.5
+
+
io.avaje
avaje-http-client
- 2.9-RC4
io.avaje
avaje-inject-test
- 11.0
true
@@ -37,7 +40,6 @@
jackson-databind
${jackson.version}
-
diff --git a/avaje-jex/pom.xml b/avaje-jex/pom.xml
index b53be371..b6b6b7b3 100644
--- a/avaje-jex/pom.xml
+++ b/avaje-jex/pom.xml
@@ -4,7 +4,7 @@
io.avaje
avaje-jex-parent
- 3.0-RC10
+ 3.0-RC11
avaje-jex
@@ -17,17 +17,21 @@
io.avaje
avaje-config
- 4.0
true
io.avaje
avaje-inject
- 11.0
true
+
+ io.avaje
+ avaje-spi-service
+ provided
+
+
com.fasterxml.jackson.core
jackson-databind
@@ -38,14 +42,24 @@
io.avaje
avaje-jsonb
- 2.4
true
io.avaje
avaje-jsonb-generator
- 2.4
+ test
+
+
+
+ io.avaje
+ junit
+ 1.5
+ test
+
+
+ io.avaje
+ avaje-http-client
test
diff --git a/avaje-jex/src/main/java/io/avaje/jex/core/json/JsonbJsonService.java b/avaje-jex/src/main/java/io/avaje/jex/core/json/JsonbJsonService.java
index a3709203..cebb9520 100644
--- a/avaje-jex/src/main/java/io/avaje/jex/core/json/JsonbJsonService.java
+++ b/avaje-jex/src/main/java/io/avaje/jex/core/json/JsonbJsonService.java
@@ -1,15 +1,15 @@
package io.avaje.jex.core.json;
-import io.avaje.jex.spi.JsonService;
-import io.avaje.jsonb.JsonType;
-import io.avaje.jsonb.JsonWriter;
-import io.avaje.jsonb.Jsonb;
-
import java.io.InputStream;
import java.io.OutputStream;
import java.lang.reflect.Type;
import java.util.Iterator;
+import io.avaje.jex.spi.JsonService;
+import io.avaje.json.JsonWriter;
+import io.avaje.jsonb.JsonType;
+import io.avaje.jsonb.Jsonb;
+
/** Provides JsonService using avaje-jsonb. */
public final class JsonbJsonService implements JsonService {
diff --git a/avaje-jex/src/test/java/io/avaje/jex/core/ExceptionManagerTest.java b/avaje-jex/src/test/java/io/avaje/jex/core/ExceptionManagerTest.java
index 3593371f..01b1af61 100644
--- a/avaje-jex/src/test/java/io/avaje/jex/core/ExceptionManagerTest.java
+++ b/avaje-jex/src/test/java/io/avaje/jex/core/ExceptionManagerTest.java
@@ -1,18 +1,18 @@
package io.avaje.jex.core;
-import io.avaje.jex.Jex;
-import io.avaje.jex.http.BadRequestException;
-import io.avaje.jex.http.ErrorCode;
-import io.avaje.jex.http.HttpResponseException;
-import io.avaje.jsonb.JsonException;
-
-import org.junit.jupiter.api.AfterAll;
-import org.junit.jupiter.api.Test;
+import static org.assertj.core.api.Assertions.assertThat;
import java.net.http.HttpResponse;
import java.util.Map;
-import static org.assertj.core.api.Assertions.assertThat;
+import org.junit.jupiter.api.AfterAll;
+import org.junit.jupiter.api.Test;
+
+import io.avaje.jex.Jex;
+import io.avaje.jex.http.BadRequestException;
+import io.avaje.jex.http.ErrorCode;
+import io.avaje.jex.http.HttpResponseException;
+import io.avaje.json.JsonException;
class ExceptionManagerTest {
diff --git a/avaje-jex/src/test/java/io/avaje/jex/core/JsonTest.java b/avaje-jex/src/test/java/io/avaje/jex/core/JsonTest.java
index 99c20ede..17fcf78b 100644
--- a/avaje-jex/src/test/java/io/avaje/jex/core/JsonTest.java
+++ b/avaje-jex/src/test/java/io/avaje/jex/core/JsonTest.java
@@ -11,16 +11,15 @@
import java.util.concurrent.locks.LockSupport;
import java.util.stream.Stream;
-import io.avaje.jsonb.Json;
-import io.avaje.jsonb.JsonType;
-import io.avaje.jsonb.Jsonb;
-import io.avaje.jsonb.Types;
-
import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.Test;
import io.avaje.jex.Jex;
import io.avaje.jex.core.json.JacksonJsonService;
+import io.avaje.jsonb.Json;
+import io.avaje.jsonb.JsonType;
+import io.avaje.jsonb.Jsonb;
+import io.avaje.jsonb.Types;
public class JsonTest {
diff --git a/examples/example-jdk/pom.xml b/examples/example-jdk/pom.xml
index 7f3c0a4b..7eec60a6 100644
--- a/examples/example-jdk/pom.xml
+++ b/examples/example-jdk/pom.xml
@@ -24,7 +24,7 @@
io.avaje
avaje-jex
- 3.0-RC10
+ 3.0-RC11
diff --git a/examples/example-robaho/pom.xml b/examples/example-robaho/pom.xml
index a68efc17..a858dd75 100644
--- a/examples/example-robaho/pom.xml
+++ b/examples/example-robaho/pom.xml
@@ -21,7 +21,7 @@
io.avaje
avaje-jex
- 3.0-RC10
+ 3.0-RC11
diff --git a/examples/pom.xml b/examples/pom.xml
index aa93e84b..d5adae83 100644
--- a/examples/pom.xml
+++ b/examples/pom.xml
@@ -5,7 +5,7 @@
avaje-jex-parent
io.avaje
- 3.0-RC10
+ 3.0-RC11
examples
diff --git a/pom.xml b/pom.xml
index 40c7324f..379fd173 100644
--- a/pom.xml
+++ b/pom.xml
@@ -1,5 +1,7 @@
-
+
4.0.0
org.avaje
@@ -9,7 +11,7 @@
io.avaje
avaje-jex-parent
- 3.0-RC10
+ 3.0-RC11
pom
@@ -22,7 +24,18 @@
2.18.2
false
21
- 2024-12-08T18:26:16Z
+ 2024-12-16T18:42:05Z
+
+ 4.0
+ 11.1-RC1
+ 3.0-RC5
+ 2.9-RC4
+ 9.4
+ 2.4
+ 1.1
+ 2.6
+ 1.36
+ 15.8.0
@@ -34,31 +47,220 @@
avaje-jex-static-content
-
-
-
-
- io.avaje
- junit
- 1.5
- test
-
-
-
- io.avaje
- avaje-http-client
- 2.8
- test
-
+
+
+
+ io.ebean
+ ebean-bom
+ ${ebean.version}
+ import
+ pom
+
+
+ io.avaje
+ avaje-logback-encoder
+ 0.4
+
+
+ io.avaje
+ avaje-config
+ ${avaje.config.version}
+
+
+ io.avaje
+ avaje-jsonb
+ ${avaje.jsonb.version}
+
+
+ io.avaje
+ avaje-http-api
+ ${avaje.http.version}
+
+
+ io.avaje
+ avaje-htmx-api
+ ${avaje.http.version}
+
+
+ io.avaje
+ avaje-http-client
+ ${avaje.http.version}
+
+
+ io.avaje
+ avaje-inject
+ ${avaje.inject.version}
+
+
+ io.avaje
+ avaje-inject-test
+ ${avaje.inject.version}
+
+
+ io.avaje
+ avaje-metrics
+ ${avaje.metrics.version}
+
+
+ io.avaje
+ avaje-validator-constraints
+ ${avaje.validator.version}
+
+
+ io.avaje
+ avaje-validator
+ ${avaje.validator.version}
+
+
+ io.avaje
+ avaje-http-client-generator
+ ${avaje.http.version}
+
+
+ io.avaje
+ avaje-http-jex-generator
+ ${avaje.http.version}
+
+
+ io.avaje
+ avaje-inject-generator
+ ${avaje.inject.version}
+
+
+ io.avaje
+ avaje-jsonb-generator
+ ${avaje.jsonb.version}
+
+
+ io.avaje
+ avaje-validator-generator
+ ${avaje.validator.version}
+
+
+ io.avaje
+ avaje-prisms
+ ${avaje.prisms.version}
+ true
+
+
+ io.avaje
+ avaje-record-builder
+ ${avaje.record.builder.version}
+
+
+ io.avaje
+ avaje-spi-service
+ ${avaje.spi.version}
+
+
+ io.avaje
+ avaje-jex
+ ${project.version}
+
+
+ io.avaje
+ avaje-jex-test
+ ${project.version}
+
+
+ io.avaje
+ avaje-jex-freemarker
+ ${project.version}
+
+
+ io.avaje
+ avaje-jex-mustache
+ ${project.version}
+
+
+ io.avaje
+ avaje-jex-htmx
+ ${project.version}
+
+
+ io.avaje
+ avaje-jex-static-content
+ ${project.version}
+
+
+
-
- io.avaje
- avaje-spi-service
- 2.8
- provided
-
-
-
+
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+
+
+ -AbuildPlugin=false
+
+
+
+
+ io.avaje
+ avaje-inject-maven-plugin
+ ${avaje.inject.version}
+
+
+ process-sources
+
+ provides
+
+
+
+
+
+
+
+
+
+ io.avaje
+ openapi-maven-plugin
+ 1.0
+
+
+ main
+ process-classes
+
+ openapi
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-shade-plugin
+
+
+ package
+
+ shade
+
+
+
+
+
+ false
+
+
+
+
+
+ io.avaje
+ avaje-provides-maven-plugin
+
+
+
+ disable-apt-validation
+ add-module-spi
+
+
+
+
+
+
+
@@ -73,5 +275,50 @@
examples
+
+ jdk24Plus
+
+ [24,)
+
+
+
+
+ io.avaje
+ avaje-provides-maven-plugin
+
+
+
+
+
+ create-modules
+
+
+
+ maven-dependency-plugin
+
+
+ copy-modules
+ package
+
+ copy-dependencies
+
+
+
+ ${project.build.directory}/modules
+ runtime
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-jar-plugin
+
+ ${project.build.directory}/modules
+
+
+
+
+