Gradle是否具有" npm link"等功能?

时间:2018-04-10 06:01:18

标签: java gradle

我正在考虑将我们的" mono-repo"这样每个可部署的服务都有自己的repo。这样做的一个缺点是对任何常见模块/库的更改变得乏味,因为它需要先发布库然后更新gradle中的版本才能使用这些更改。

npm似乎可以通过npm link解决这个问题,这样您就可以在推送更改之前修改库并在应用程序中对其进行测试。我想知道gradle或任何其他构建工具是否为java应用程序提供类似的东西。

1 个答案:

答案 0 :(得分:1)

听起来composite builds就是你想要的。该功能允许您将项目依赖项替换为另一个版本。

例如,假设您有一个名为“Acme”的应用程序项目,该项目依赖于库“MyLib”。 Acme通常从Maven Central或您公司的工件库下载MyLib。但是您希望对MyLib进行一些更改并使用Acme进行测试,因此您可以获取MyLib的源代码,进行更改,然后使用复合构建功能使用修改后的MyLib运行 Acme 的构建

请注意,您无需手动构建MyLib或在任何位置安装生成的工件。 Gradle将自动执行MyLib的构建,并将其工件包含在Acme的构建中。

希望这是有道理的。