← All recipes
Open source

Find Gradle dependency

Recipe IDorg.openrewrite.gradle.search.FindDependencyArtifactorg.openrewrite:rewrite-gradle

Finds dependencies declared in gradle build files. Each match is also recorded as a row in the DependenciesDeclared data table. See the reference on Gradle configurations or the diagram below for a description of what configuration to use. A project's compile and runtime classpath is based on these configurations. <img alt="Gradle compile classpath" src="https://docs.gradle.org/current/userguide/img/java-library-ignore-deprecated-main.png" width="200px"/> A project's test classpath is based on these configurations. <img alt="Gradle test classpath" src="https://docs.gradle.org/current/userguide/img/java-library-ignore-deprecated-test.png" width="200px"/>.

Single recipeApache 2.0

Add to your build

Get a download tokenSign in with GitHub or Google, and your token replaces YOUR_DOWNLOAD_TOKEN below. Free for open source recipes like this one.

~/.gradle/gradle.properties

codeGenomeUsername=you@example.com
codeGenomeToken=YOUR_DOWNLOAD_TOKEN

build.gradle.kts

plugins {
    id("org.openrewrite.rewrite") version("latest.release")
}

rewrite {
    activeRecipe("org.openrewrite.gradle.search.FindDependency")
}

repositories {
    mavenCentral()
    maven {
        url = uri("https://artifacts.codegenomeproject.org/maven")
        credentials {
            username = providers.gradleProperty("codeGenomeUsername").get()
            password = providers.gradleProperty("codeGenomeToken").get()
        }
    }
}

dependencies {
    rewrite("org.openrewrite:rewrite-gradle:8.92.8")
}

Then run

./gradlew rewriteRun

This recipe has required options, which a build sets in a rewrite.yml recipe that you activate instead.

Usage

You’ll need the Moderne CLI configured before running the command below.

mod run . --recipe org.openrewrite.gradle.search.FindDependency --recipe-option "groupId=com.google.guava" --recipe-option "artifactId=guava"

If the recipe isn’t available locally, install it with:

mod config recipes jar install org.openrewrite:rewrite-gradle:RELEASE

Options

NameTypeDescription
groupIdrequiredStringThe first part of a dependency coordinate identifying its publisher.
e.g. com.google.guava
artifactIdrequiredStringThe second part of a dependency coordinate uniquely identifying it among artifacts from the same publisher.
e.g. guava
configurationStringThe dependency configuration to search for dependencies in. If omitted then all configurations will be searched.
e.g. api
versionStringAn exact version number or node-style semver selector used to select the version number.
e.g. 3.0.0
versionPatternStringAllows version selection to be extended beyond the original Node Semver semantics. So for example,Setting 'version' to "25-29" can be paired with a metadata pattern of "-jre" to select Guava 29.0-jre
e.g. -jre

Data tables

Structured output this recipe can produce.

  • Dependencies declaredDirect (first-order) dependencies declared by the project.org.openrewrite.maven.table.DependenciesDeclared
  • Source files that had resultsSource files that were modified by the recipe run.org.openrewrite.table.SourcesFileResults
  • Source files that had search resultsSearch results that were found during the recipe run.org.openrewrite.table.SearchResults
  • Source files that errored on a recipeThe details of all errors produced by a recipe run.org.openrewrite.table.SourcesFileErrors
  • Recipe performanceStatistics used in analyzing the performance of recipes.org.openrewrite.table.RecipeRunStats