通过从maven项目

时间:2017-04-28 07:18:06

标签: maven gradle repository

如何通过从maven项目中解析build.gradle来列出gradle项目中使用的远程存储库。使用aether进行maven项目我能够让依赖项查找类似于以太网的东西,可以在gradle项目上使用获取依赖项,项目中使用的远程存储库。

1 个答案:

答案 0 :(得分:0)

build.gradle并未真正解析,而是解释,因为每个Gradle脚本都是一个Groovy脚本。当然,您可以尝试解析repositoriesdependencies闭包,但您永远无法确定,脚本的其他部分甚至其他脚本(如初始化脚本)都会在您的背后添加存储库或依赖项。

我建议编写收集存储库或依赖项的任务,并以可解析的格式/符号(如CSV,JSON或XML)编写它们。如果您需要重用该功能,您甚至可以将这些任务包装在插件中。

要迭代存储库,我可以参考this similar question

对于依赖项,您有两种可能性:您可以自己编写任务,例如存储库,也可以使用现有类型DependencyReportTask及其outputFile属性。然后你必须找到一种解析报告格式的方法。