gradle 依赖于另一个项目的项目是否获得库?
Does gradle project with dependency to another project get libraries?
我有两个项目:
项目 A 使用项目 B
项目A:
-- Settings.graddle:
include ':projectB'
-- build.gradle:
dependencies {
compile project(':projectB')
}
项目 B:
-- build.gradle:
dependencies {
compile group: 'org.modelmapper.extensions', name: 'modelmapper-jackson', version: '1.1.1'
}
这会将 modelmapper-jackson 库导入到 ProjectB 中。 (预期行为)
它还 将 modelmapper-jackson 库导入 ProjectA.
这可能是我想要的行为,但是:
我想了解如何定义导入和不导入的内容,因为将来我可能会有更多项目,并且不希望所有项目都拥有所有库
gradle有什么我漏掉的吗?
您可以使用 gradle dependencies
检查您的依赖关系图。
有多种方法可以停止传递依赖。
在项目B中设置依赖为compileOnly*
compileOnly group: 'org.modelmapper.extensions', name: 'modelmapper-jackson', version: '1.1.1'
在项目 A 中排除
dependencies {
compile project(':projectB') {
exclude module 'modelmapper-jackson'
}
我有两个项目:
项目 A 使用项目 B
项目A:
-- Settings.graddle:
include ':projectB'
-- build.gradle:
dependencies {
compile project(':projectB')
}
项目 B:
-- build.gradle:
dependencies {
compile group: 'org.modelmapper.extensions', name: 'modelmapper-jackson', version: '1.1.1'
}
这会将 modelmapper-jackson 库导入到 ProjectB 中。 (预期行为)
它还 将 modelmapper-jackson 库导入 ProjectA.
这可能是我想要的行为,但是:
我想了解如何定义导入和不导入的内容,因为将来我可能会有更多项目,并且不希望所有项目都拥有所有库
gradle有什么我漏掉的吗?
您可以使用 gradle dependencies
检查您的依赖关系图。
有多种方法可以停止传递依赖。
在项目B中设置依赖为compileOnly*
compileOnly group: 'org.modelmapper.extensions', name: 'modelmapper-jackson', version: '1.1.1'
在项目 A 中排除
dependencies {
compile project(':projectB') {
exclude module 'modelmapper-jackson'
}