Step 1. Add the JitPack repository to your build file
Add it in your root settings.gradle at the end of repositories:
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
mavenCentral()
maven { url 'https://jitpack.io' }
}
}
Add it in your settings.gradle.kts at the end of repositories:
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
mavenCentral()
maven { url = uri("https://jitpack.io") }
}
}
Add to pom.xml
<repositories>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
</repositories>
Add it in your build.sbt at the end of resolvers:
resolvers += "jitpack" at "https://jitpack.io"
Add it in your project.clj at the end of repositories:
:repositories [["jitpack" "https://jitpack.io"]]
Step 2. Add the dependency
dependencies {
implementation 'com.github.regulate:jooq-codegen-pojo-extension:0.0.1'
}
dependencies {
implementation("com.github.regulate:jooq-codegen-pojo-extension:0.0.1")
}
<dependency>
<groupId>com.github.regulate</groupId>
<artifactId>jooq-codegen-pojo-extension</artifactId>
<version>0.0.1</version>
</dependency>
libraryDependencies += "com.github.regulate" % "jooq-codegen-pojo-extension" % "0.0.1"
:dependencies [[com.github.regulate/jooq-codegen-pojo-extension "0.0.1"]]
Small extension of jOOQ's code generation features
##Latest features See this link
##Requirements
Add jitpack.io repository to plugin repositories:
<pluginRepositories>
<pluginRepository>
<id>jitpack.io</id>
<url>http://jitpack.io</url>
</pluginRepository>
</pluginRepositories>
Add jooq-codegen-maven
plugin to your pom plugin's section:
<plugin>
<groupId>org.jooq</groupId>
<artifactId>jooq-codegen-maven</artifactId>
<version>${jooq.version}</version>
</plugin>
In generator
section declare the following name of generator:
<name>org.baddev.jooq.CustomGenerator</name>
In generate
section declare:
<pojos>true</pojos>
<propertiesConstants>true</propertiesConstants>
<jaxbAnnotations>true</jaxbAnnotations>
Note: <pojos>true</pojos>
must be set directly or forced by declaring <daos>true</daos>
(in case daos are required)
Finally, attach an extension dependency to plugin:
<dependencies>
<dependency>
<groupId>com.github.regulate</groupId>
<artifactId>jooq-codegen-pojo-extension</artifactId>
<version>${codegen.pojo.ext.version}</version>
</dependency>
</dependencies>
Example
<plugin>
<groupId>org.jooq</groupId>
<artifactId>jooq-codegen-maven</artifactId>
<version>${jooq.version}</version>
<executions>
<execution>
<id>generate-mysql</id>
<goals>
<goal>generate</goal>
</goals>
<configuration>
<jdbc>
<driver>${db.mysql.driver}</driver>
<url>${db.mysql.url}</url>
<user>${db.user}</user>
<password>${db.password}</password>
</jdbc>
<generator>
<name>org.baddev.jooq.CustomGenerator</name>
<strategy>
<name>org.jooq.util.DefaultGeneratorStrategy</name>
</strategy>
<database>
<name>org.jooq.util.mysql.MySQLDatabase</name>
<inputSchema>db_schema_name</inputSchema>
</database>
<generate>
<pojos>true</pojos>
<propertiesConstants>true</propertiesConstants>
<jaxbAnnotations>true</jaxbAnnotations>
</generate>
<target>
<packageName>your_output_package_name</packageName>
<directory>${project.basedir}/target/generated-sources/jooq</directory>
</target>
</generator>
</configuration>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>${mysql.version}</version>
</dependency>
<dependency>
<groupId>com.github.regulate</groupId>
<artifactId>jooq-codegen-pojo-extension</artifactId>
<version>${codegen.pojo.ext.version}</version>
</dependency>
</dependencies>
</plugin>