Home

Awesome

Doma Compile Plugin

Doma compile plugin is a gradle plugin.
It allows annotation processors to read Doma resources at compile-time.

The plugin supports Java and Kotlin.

Java CI with Gradle project chat Twitter

How to use

See Gradle Plugin Portal.

What does the plugin do ?

The plugin is equivalent to the following gradle script:

def domaResources = ['doma.compile.config', 'META-INF/**/*.sql', 'META-INF/**/*.script']

task copyDomaResourcesJava(type: Copy) {
    from sourceSets.main.resources.srcDirs
    into compileJava.destinationDir
    include domaResources
}

compileJava {
    dependsOn copyDomaResourcesJava
}

processResources {
    exclude domaResources
}

task copyDomaResourcesKotlin(type: Copy) {
    from sourceSets.main.resources.srcDirs
    into compileKotlin.destinationDir
    include domaResources
}

compileKotlin {
    dependsOn copyDomaResourcesKotlin
}

kapt {
    arguments {
        arg('doma.resources.dir', compileKotlin.destinationDir)
    }
}

Example build.gradle.kts

Major versions

Status and Repository

VersionStatusRepositoryBranch
Doma Compile Plugin 2limited-supportdomaframework/doma-compile-plugin2.x
Doma Compile Plugin 3stabledomaframework/doma-compile-pluginmaster

Compatibility matrix

The supported versions of Doma:

Doma 2Doma 3
Doma Compile Plugin 2v
Doma Compile Plugin 3v

The minimum supported versions of Java:

Java 8Java 17
Doma Compile Plugin 2v
Doma Compile Plugin 3v