有没有办法以编程方式检索gradle中的依赖项

Ray*_*Ray 5 java baseline gradle

用例以osgi包为基准。

我想从配置的存储库中检索指定工件(当前刚刚构建的工件)的指定版本(或最新版本),以便可以在基准操作中使用jar文件(需要使用先前版本和新版本) )。

是否有任何gradle API可用于此目的?

Sak*_*boy 0

您可以像这样访问项目的依赖项:

configurations.compile.allDependencies从那里你可以迭代DependencySet并做你需要做的事情。

注意:您可能需要在afterEvaluate闭包中执行此操作,因为在此之后才配置依赖项。所以像这样:

project.afterEvaluate {
    def dependencySet = configurations.compile.allDependencies
    def dependenciesSize = dependencySet.size()
    for (int i = 0; i < dependenciesSize; i++) {
        def dependency = dependencySet.getAt(i)
        if (dependency.group != null && dependency.name != null) {
            if (dependency.group.equals("com.project.group") &&
                    dependency.name.equals("my-project")) {
                // Do what you need to do with the dependency you found.
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)