我一直想知道在不同但依赖项目的环境中使用Gradle的正确方法是什么。
例如,假设我有一个docker镜像构建,它依赖于一个单独的(例如,Dropwizard)应用程序构建,而这依赖于一个公共实用程序库。什么是在实用程序中进行更改的正确方法,在应用程序代码中使用该更改,并将这些更改放入docker镜像中,而无需多个完整的持续集成发布周期?
在Maven中,默认情况下都会发生这种情况。我只是构建(安装)它们中的每一个,只要我的依赖项是正确的(正确的组/工件/版本)它就会正常工作。"
或者我可以查看所有3个项目并创建一个简单的非常小的超级pom,其中包含一个模块部分,其中列出了3个底层项目,并从那里构建,自动排序依赖项,对构建进行适当排序,并且我的更改是级联的通过依赖。我可以将这个pom加载到Eclipse中,并自动确定并拾取所有相互关系。
似乎Gradle没有开箱即用的本地存储库的概念。 Gradle缓存只不过是性能实现细节而不是本地存储库。由于在Gradle中缺乏SNAPSHOT版本的概念,这似乎更加恶化。
那么在Gradle中采用这种方法的正确方法是什么?感谢。