Available in versions: Dev (3.20) | Latest (3.19) | 3.18 | 3.17 | 3.16 | 3.15 | 3.14 | 3.13 | 3.12 | 3.11

System properties governing code generation

Applies to ✅ Open Source Edition   ✅ Express Edition   ✅ Professional Edition   ✅ Enterprise Edition

Regardless if you're using a standalone code generation configuration, or if you're generating code with Maven, ant, or gradle, you can always provide default values for certain configuration elements through the following system properties:

  • -Djooq.codegen.configurationFile (path): Specify an external configuration file, rather than using the inline configuration, e.g. in Maven
  • -Djooq.codegen.jdbc.driver (class name): The JDBC driver to use for JDBC connection based code generation
  • -Djooq.codegen.jdbc.url (url): The JDBC URL to use for JDBC connection based code generation (the name of this property can be overridden with the urlProperty value)
  • -Djooq.codegen.jdbc.user (string): The JDBC user name to use for JDBC connection based code generation
  • -Djooq.codegen.jdbc.username (string, same as user): The JDBC user name to use for JDBC connection based code generation
  • -Djooq.codegen.jdbc.password (string): The JDBC password to use for JDBC connection based code generation
  • -Djooq.codegen.jdbc.autoCommit (boolean): Whether the JDBC connection should be put in autocommit mode
  • -Djooq.codegen.jdbc.initScript (string): A script to run after creating the JDBC connection, and before running the code generator
  • -Djooq.codegen.jdbc.initSeparator (string): The separator used to separate statements in the initScript, defaulting to ";"
  • -Djooq.codegen.logging (TRACE, DEBUG, INFO, WARN, ERROR, FATAL): The log level to use
  • -Djooq.codegen.skip (boolean): Allows for skipping the execution of jOOQ code generation. Useful for larger builds, e.g. with Maven
  • -Djooq.codegen.target.packageName (string): The output package name for generated code
  • -Djooq.codegen.target.directory (string): The output directory for generated code
  • -Djooq.codegen.target.encoding (string): The output encoding for generated code
  • -Djooq.codegen.target.locale (string): The output locale for generated code

In case of conflict between the above default value and a more concrete, local configuration, the latter prevails and the default is overridden.

An additional flag allows for overriding this default, such that the system property takes precedence over any explicit configuration:

  • -Djooq.codegen.propertyOverride (boolean): System properties override explicit configuration

Feedback

Do you have any feedback about this page? We'd love to hear it!

The jOOQ Logo