diff --git a/jOOQ-codegen/src/main/java/module-info.java b/jOOQ-codegen/src/main/java/module-info.java new file mode 100644 index 0000000000..8da59eaf16 --- /dev/null +++ b/jOOQ-codegen/src/main/java/module-info.java @@ -0,0 +1,14 @@ +/** + * The jOOQ codegen module. + */ +module org.jooq.codegen { + + // Other jOOQ modules + requires transitive org.jooq.meta; + + // JAXB is used optionally for loading a variety of XML content, including + // - Settings (org.jooq.conf) + // - InformationSchema (org.jooq.util.xml.jaxb) + requires static java.xml.bind; + +} diff --git a/jOOQ-codegen/src/main/java/org/jooq/codegen/JavaGenerator.java b/jOOQ-codegen/src/main/java/org/jooq/codegen/JavaGenerator.java index c75e53632d..b746f625dd 100644 --- a/jOOQ-codegen/src/main/java/org/jooq/codegen/JavaGenerator.java +++ b/jOOQ-codegen/src/main/java/org/jooq/codegen/JavaGenerator.java @@ -56,7 +56,6 @@ import static org.jooq.impl.DSL.name; import static org.jooq.meta.AbstractTypedElementDefinition.getDataType; import static org.jooq.tools.StringUtils.isBlank; -import java.beans.ConstructorProperties; import java.io.File; import java.io.IOException; import java.io.RandomAccessFile; @@ -2075,7 +2074,7 @@ public class JavaGenerator extends AbstractGenerator { } else { if (generateConstructorPropertiesAnnotationOnRecords()) - out.println("@%s({ [[%s]] })", ConstructorProperties.class, properties); + out.println("@%s({ [[%s]] })", out.ref("java.beans.ConstructorProperties"), properties); if (pojoArgument) out.println("%s%s(%s value) {", visibility(), className, out.ref(pojoNameFull)); @@ -4664,7 +4663,7 @@ public class JavaGenerator extends AbstractGenerator { out.println(); if (generateConstructorPropertiesAnnotationOnPojos()) - out.println("@%s({ [[%s]] })", ConstructorProperties.class, properties); + out.println("@%s({ [[%s]] })", out.ref("java.beans.ConstructorProperties"), properties); out.print("%s%s(", visibility(), className); diff --git a/jOOQ-meta/src/main/java/module-info.java b/jOOQ-meta/src/main/java/module-info.java new file mode 100644 index 0000000000..e028f52510 --- /dev/null +++ b/jOOQ-meta/src/main/java/module-info.java @@ -0,0 +1,52 @@ +/** + * The jOOQ meta module. + */ +module org.jooq.meta { + + // Other jOOQ modules + requires transitive org.jooq; + + // JAXB is used optionally for loading a variety of XML content, including + // - Settings (org.jooq.conf) + // - InformationSchema (org.jooq.util.xml.jaxb) + requires static java.xml.bind; + + exports org.jooq.meta; + exports org.jooq.meta.cubrid; + exports org.jooq.meta.derby; + exports org.jooq.meta.firebird; + exports org.jooq.meta.h2; + exports org.jooq.meta.hsqldb; + exports org.jooq.meta.ignite; + exports org.jooq.meta.jaxb; + exports org.jooq.meta.jdbc; + exports org.jooq.meta.mariadb; + exports org.jooq.meta.mysql; + exports org.jooq.meta.postgres; + exports org.jooq.meta.sqlite; + exports org.jooq.meta.xml; + exports org.jooq.meta.yugabyte; + + + + + + + + + + + + + + + + + + + + + + + +} diff --git a/jOOQ-postgres-extensions/src/main/java/module-info.java b/jOOQ-postgres-extensions/src/main/java/module-info.java new file mode 100644 index 0000000000..d185688e8a --- /dev/null +++ b/jOOQ-postgres-extensions/src/main/java/module-info.java @@ -0,0 +1,15 @@ +/** + * The jOOQ postgres extensions module. + */ +module org.jooq.codegen { + + // Other jOOQ modules + requires transitive org.jooq; + + // Nullability annotations for better Kotlin interop + requires static org.jetbrains.annotations; + + // Vendor specific JDBC drivers + requires static org.postgresql.jdbc; + +} diff --git a/jOOQ/src/main/java/module-info.java b/jOOQ/src/main/java/module-info.java index 0c05b3f208..61ef2db071 100644 --- a/jOOQ/src/main/java/module-info.java +++ b/jOOQ/src/main/java/module-info.java @@ -38,7 +38,7 @@ module org.jooq { requires transitive org.reactivestreams; requires transitive r2dbc.spi; - + // [#11738] optional vendor specific JDBC drivers