Gradle循环依赖,强制忽略

时间:2015-10-06 01:07:39

标签: gradle build circular-dependency

我正在尝试创建一个服务注册表,其中所有模块都添加为compile(项目( .. ))。服务注册表模块公开一个统一的函数来调用任何模块中的任何函数。这是为了减少两个模块之间的直接耦合并提供适当的关注分离。要从任何模块调用任何函数,可以将service-registry的依赖项添加为项目并获取该函数。但是,如果我们这样做,该项目具有循环依赖性。

有没有办法可以强制gradle忽略循环依赖,

project root
    project A
    -- compile(project(':SR'))
    project B
    -- compile(project(':SR'))
    project SR
    -- compile(project(':A')
    -- compile(project(':B')

我将把依赖项移动到nexus并使用版本控制,但是在初始阶段,如果不知何故我可以强制gradle不这样做,那将是很好的。 可以通过做一些条件来完成

if(calling_project_name!=root) compile(project(':A'),project(':B'))exclude(project(':calling project name')

有可能吗?其他建议也欢迎。 我正在使用gradle 2.7。

0 个答案:

没有答案