Skip to content
KitploitKITPLOIT
ToolsBlog
Submit
ToolsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

··Feeds·Contact·Privacy·© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
creadur-rat-gradle — Apache RAT (Release Audit Tool) Gradle Plugin | Kitploit
Tools/GitHubGitHub/eskatos/creadur-rat-gradle
Static AnalysisCode AnalysisConfiguration AuditingDevSecOpsSupply Chain Security
GitHubeskatos/creadur-rat-gradle

creadur-rat-gradle

Apache RAT (Release Audit Tool) Gradle Plugin

View Repository
111231 day agoNot yet reviewed

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share

Apache RAT (Release Audit Tool) Gradle Plugin

CI Apache License 2

This plugin allows to run the Apache RAT release audit tool, focused on licenses.

Installation

In your build.gradle(.kts) file:

root@kitploit:~
plugins {
    id("org.nosphere.apache.rat") version "0.8.1"
}

Usage

The plugin registers a task named rat that you can configure in your build.gradle(.kts) file:

Kotlin DSL
root@kitploit:~
tasks.rat {

    // Use the default RAT license header matchers, defaults to `true`
    addDefaultMatchers.set(false)

    // Add custom substring license header matchers
    substringMatcher("family", "category", "pattern-1", "pattern-2")

    // Declare approved license families, if used, any non-declared family won't be approved
    approvedLicense("MIT")

    // Input directory, defaults to '.'
    inputDir.set("some/path")

    // List of Gradle exclude directives, defaults to ['**/.gradle/**']
    excludes.add("**/build/**")

    // RatTask 0.5.0+ implements PatternFilterable
    exclude { it.file in configurations.someConf.files }

    // Rat excludes file, one directive per line
    excludeFile.set(layout.projectDirectory.file(".rat-excludes.txt"))

    // XML, TXT and HTML reports directory, defaults to 'build/reports/rat'
    reportDir.set(file("some/other/path"))

    // Custom XSL stylesheet for the HTML report
    stylesheet.set(file("custom/rat-html-stylesheet.xsl"))

    // Fail the build on rat errors, defaults to true
    failOnError.set(false)
}
Download Tool
Groovy DSL
root@kitploit:~
rat {

    // Input directory, defaults to '.'
    inputDir.set(file("some/path"))

    // List of Gradle exclude directives, defaults to ['**/.gradle/**']
    excludes.add("**/build/**")

    // Rat excludes file, one directive per line
    excludeFile.set(layout.projectDirectory.file(".rat-excludes.txt"))

    // XML, TXT and HTML reports directory, defaults to 'build/reports/rat'
    reportDir.set(file("some/other/path"))

    // Custom XSL stylesheet for the HTML report
    stylesheet.set(file("custom/rat-html-stylesheet.xsl"))

    // Fail the build on rat errors, defaults to true
    failOnError.set(false)

    // Prints the list of files with unapproved licences to the console, defaults to false
    verbose.set(true)
}

You can run the rat task by invoking Gradle:

root@kitploit:~
gradle rat

If the project has a check task, then the rat task is automatically registered as dependent on the former.

When a Rat audit fails, a clickable URL of the HTML report will be printed out:

root@kitploit:~
FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':rat'.
> Apache Rat audit failure - 35 unapproved licenses
    See file:///path/to/build/reports/rat/index.html

Apache Rat HTML Report

Compatibility matrix

PluginMin JavaMin GradleMax GradleConfiguration CacheBuild Cache
0.8.11.86.08.x🟢🟢
0.8.01.86.08.x🟡🟢
0.7.11.86.07.x🟡🟢
0.7.01.86.07.x🟡🟢
0.6.01.64.76.x🟡🟢
0.5.31.64.76.x🔴🟢
0.5.21.64.76.x🔴🟢
0.5.11.64.75.x🔴🟢
0.5.01.64.75.x🔴🟢
0.4.01.64.75.x🔴🟢
0.3.11.62.144.x🔴
  • (1) Configuration Cache
  • (2) Build Cache
🟢
0.3.01.62.144.x🔴🟢
0.2.01.62.144.x🔴🟢
0.1.01.62.144.x🔴🟢