有没有办法将Maven工件坐标的Gradle项目依赖项重定向到同一版本中另一个Gradle项目的输出?
我没有看到依赖project(‘:xyz’)
等内容的重点,因为这要求项目:xyz
位于我的文件系统&构建,并为引用项目知道:xyz
也在同一个版本中。让我更有意义的是依赖Maven工件坐标,并使用从同一构建中指定匹配坐标的项目构建的工件,而不是从存储库下载工件。
如果这个功能存在,或者我自己创建,我想它会被实现为一个对象,可以在所有其他存储库之前repositories
闭包中列出,如{{1} }。
答案 0 :(得分:1)
您要找的是composite builds。它允许您定义构建包含另一个构建,因此Gradle确定依赖符号group:name:version
被包含的构建替换。
但是,当项目属于同一个单元时,我仍然建议使用project(:xyz)
表示法,这通常是从源代码控制中单个结账。
答案 1 :(得分:0)
您可以在本地存储库中发布xyz
。
在项目xyz
中,使用此插件:
apply plugin: 'maven-publish'
然后运行gradle publishToMavenLocal
然后,在“root”项目中,另外使用本地存储库并使用xyz
作为常规依赖项:
repositories {
mavenLocal()
}
dependencies {
compile('your.company:xyz:1.0.0')
}