我已经看到了一些使用Gradle Tooling API解析build.gradle然后更新内存中依赖项的示例代码。Tooling API是否可以将其输出到更新的build.gradle文件中?
我尝试使用java库来更新gradle依赖项,而不是尝试构建一个复杂的正则表达式来更新groovy脚本中的依赖项(可以是字符串或map表示法)。如果API不支持编写updatebuild.gradle文件,我将继续使用groovyscript。
这是一个发布过程,我发布了一个内部模块,然后想更新build.gradle文件中的版本,以获取其他内部模块的版本,这些模块将发布的模块作为依赖项。
2条答案
按热度按时间ohfgkhjo1#
据我所知,这是不支持的。
如果你想更好地更新依赖项,我建议使用toml版本的目录。由于toml是一种定义良好的基于文本的格式,您应该能够使用标准库解析它并将其写回。
或者,如果你在Github上,你可以尝试使用dependabot或renovate,因为它们支持在Gradle中自动更新依赖项。
i34xakig2#
出于同样的原因,我对API做了同样的事情,除了不需要更新build.gradle文件。您可以将依赖版本放在www.example.com中gradle.properties,并通过运行使用Tooling API的 * 单独 * 程序来更新它。你甚至可以创建Git标签或分支。