Android Gradle构建和循环依赖

Android Gradle构建和循环依赖,android,build,gradle,dependency-management,circular-dependency,Android,Build,Gradle,Dependency Management,Circular Dependency,我在IntelliJ IDEA中有一个Android项目。它由两个模块组成:应用程序和库。应用程序依赖于库,库依赖于应用程序(是的,它不好,但我有我所拥有的,不能更改此)。项目设置中的IDEA警告我循环依赖关系,但项目构建正确。项目结构如下所示: project |__app | |__src | |__build.gradle |__libarary | |__src | |__build.gradle |__build.gradle |__settings.gradl

我在IntelliJ IDEA中有一个Android项目。它由两个模块组成:应用程序和库。应用程序依赖于库,库依赖于应用程序(是的,它不好,但我有我所拥有的,不能更改此)。项目设置中的IDEA警告我循环依赖关系,但项目构建正确。项目结构如下所示:

project
|__app
|    |__src
|    |__build.gradle
|__libarary
|    |__src
|    |__build.gradle
|__build.gradle
|__settings.gradle
现在我正试图迁移到新的基于Gradle的Android构建系统,但遇到了一个问题。在我的
build.gradle
from
app
模块中,我添加了对
library

compile project(":library")
我还尝试在
app
上的
library
中添加依赖项

compile project(":app")
但当gradle尝试组装库模块时,生成系统出错:

FAILURE: Build failed with an exception.

* What went wrong:
A problem occurred configuring project ':app'.
> Failed to notify project evaluation listener.
   > Module version project:app:unspecified depends on libraries but is not a library itself

在不更改库项目使用中的项目结构的情况下,我可以做什么:

应用插件:“android库”

在应用程序项目中使用:

应用插件:“android”

确保您拥有最新的Android工具:


classpath'com.android.tools.build:gradle:0.5.+'

此参数已更改

您现在应该重构:


在库项目中使用:

应用插件:“com.android.library”

在应用程序项目中使用:


应用插件:“com.android.application”

如果您在这里搜索与android 3.0相同的错误,您应该知道当前的解决方法是:

降级至Kotl反转='1.1.2-2'

并在gradle.properties kotlin.incremental=false中禁用增量构建


该问题计划在下一个alpha中发布

尝试构建它们。。。同时!嗨,你找到这个问题的解决方案了吗?@mariosangiorgio,不幸的是没有,我改变了我的项目结构。如果可能的话,你需要考虑你的应用程序和库都需要使用的代码