nebula-plugins / nebula-plugins/gradle-resolution-rules-plugin

Replace <version>-android with <version>-jre

Open
#97 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Groovy
Stars
49
Forks
15
Avg merge
23h 52m
Merged PRs (30d)
2

Description

I am currently using the following snippet in my build.gradle.kts but would love to replace this with a rule for the plugin:

configurations.all {
    resolutionStrategy {
        eachDependency {
            if (requested.group == "com.google.guava" && requested.version?.contains("-android") == true) {
                useVersion(requested.version!!.replace("-android", "-jre"))
                because("Android Guava lacks certain optimizations: https://github.com/google/guava/issues/2914")
            }
        }
    }
}

I couldn't figure out how to do this based on the information available in the Wiki.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the build.gradle.kts resolutionStrategy snippet and the plugin Wiki, since no implementation file or test is named. Determine where reusable dependency-resolution rules are defined and how the plugin represents version substitutions. Done means the plugin can replace matching com.google.guava -android versions with -jre without requiring the consumer's custom rule.

Written by the indexing model from the issue text.

Assessment

Tech stack
groovy, kotlin
Domain
build-system
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.