diff --git a/jOOQ-codegen/src/main/java/org/jooq/util/AbstractGenerator.java b/jOOQ-codegen/src/main/java/org/jooq/util/AbstractGenerator.java
index 448ec8eff5..4cd5028958 100644
--- a/jOOQ-codegen/src/main/java/org/jooq/util/AbstractGenerator.java
+++ b/jOOQ-codegen/src/main/java/org/jooq/util/AbstractGenerator.java
@@ -70,6 +70,7 @@ abstract class AbstractGenerator implements Generator {
boolean generateGlobalSequenceReferences = true;
boolean generateGlobalTableReferences = true;
boolean generateGlobalUDTReferences = true;
+ boolean generateJavaTimeTypes = true;
boolean fluentSetters = false;
String fullyQualifiedTypes = "";
@@ -303,6 +304,16 @@ public void setFullyQualifiedTypes(String fullyQualifiedTypes) {
this.fullyQualifiedTypes = fullyQualifiedTypes;
}
+ @Override
+ public boolean generateJavaTimeTypes() {
+ return generateJavaTimeTypes;
+ }
+
+ @Override
+ public void setGenerateJavaTimeTypes(boolean generateJavaTimeTypes) {
+ this.generateJavaTimeTypes = generateJavaTimeTypes;
+ }
+
// ----
@Override
diff --git a/jOOQ-codegen/src/main/java/org/jooq/util/GenerationTool.java b/jOOQ-codegen/src/main/java/org/jooq/util/GenerationTool.java
index 2453cdda2a..8d8d80619a 100644
--- a/jOOQ-codegen/src/main/java/org/jooq/util/GenerationTool.java
+++ b/jOOQ-codegen/src/main/java/org/jooq/util/GenerationTool.java
@@ -412,6 +412,18 @@ else if (schema.getOutputSchema() == null) {
generator.setGeneratePojosEqualsAndHashCode(g.getGenerate().isPojosEqualsAndHashCode());
if (g.getGenerate().getFullyQualifiedTypes() != null)
generator.setFullyQualifiedTypes(g.getGenerate().getFullyQualifiedTypes());
+ if (g.getGenerate().isJavaTimeTypes() != null)
+ generator.setGenerateJavaTimeTypes(g.getGenerate().isJavaTimeTypes());
+
+ /* [java-8] */
+ if (true)
+ ;
+ else
+ /* [/java-8] */
+ if (!Boolean.FALSE.equals(g.getGenerate().isJavaTimeTypes())) {
+ log.warn("INVALID CONFIG", "The java.time API cannot be used in the Java 6 distribution of jOOQ 3.7+");
+ generator.setGenerateJavaTimeTypes(false);
+ }
if (Boolean.TRUE.equals(g.getGenerate().isJpaAnnotations()))
log.warn("DEPRECATED", "The
+ * This flag is ignored in the commercial Java 6 distribution of jOOQ 3.7+ + */ + boolean generateJavaTimeTypes(); + + /** + * A flag indicating whether Java 8's java.time types should be used by the + * source code generator, rather than JDBC's java.sql types. + *
+ * This flag is ignored in the commercial Java 6 distribution of jOOQ 3.7+
+ */
+ void setGenerateJavaTimeTypes(boolean generateJavaTimeTypes);
+
/**
* The target directory
*/
diff --git a/jOOQ-meta/pom.xml b/jOOQ-meta/pom.xml
index 17099c3384..81ffd36d92 100644
--- a/jOOQ-meta/pom.xml
+++ b/jOOQ-meta/pom.xml
@@ -47,7 +47,7 @@
+