我正在尝试创建一个服务注册表,其中所有模块都添加为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。