Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Gradle - access other plugin version

I'm want to obtain other plugin version from my own plugin. I can't find a way to do that via PluginContainer nor PluginManager.

For example for build.gradle.kts:

plugins {
    id("some.plugin") version "1.2.3"
    id("my.plugin") version "3.4.5"
}

From the code of "my.plugin" I would like to read that "some.plugin" is in version "1.2.3".

like image 537
Jakub Małek Avatar asked Jul 04 '26 21:07

Jakub Małek


1 Answers

If you want to access other plugins versions you could do something like:

plugins {
    id("base")
    id("org.hidetake.ssh") version "2.10.1"
    id("com.jfrog.artifactory") version "4.29.2"
}

apply plugin: MyPlugin

class MyPlugin implements Plugin<Project> {

    @Override
    void apply(Project target) {
        // retrieve plugins dependencies from buildscript classpath
        DependencySet pluginDependencies = target.buildscript.configurations.getByName("classpath").allDependencies

        // use the found plugins dependencies
        pluginDependencies.forEach { Dependency classpathDep ->
            println(" Plugin dependency found:  $classpathDep.name, version=$classpathDep.version")
        }
    }
}

This will prompt:

> Configure project :
 Plugin dependency found:  org.hidetake.ssh.gradle.plugin, version=2.10.1
 Plugin dependency found:  com.jfrog.artifactory.gradle.plugin, version=4.29.2

> Task :prepareKotlinBuildScriptModel UP-TO-DATE

BUILD SUCCESSFUL in 434ms
like image 76
M.Ricciuti Avatar answered Jul 11 '26 01:07

M.Ricciuti



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!