gradle项目是否依赖于另一个项目获取库?

时间:2017-11-28 08:21:07

标签: java gradle classpath gradlew buildpath

我有两个项目:

ProjectA使用ProjectB

项目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 lib导入ProjectB。 (预期的行为)

将modelmapper-jackson lib导入 ProjectA

这可能是我想要的行为,但是

我想了解如何定义导入的内容以及导入的内容,因为将来我可能会有更多项目,并且不希望所有项目都包含所有库

我错过了什么东西?

1 个答案:

答案 0 :(得分:1)

您可以使用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'
}