我试图测试引用而不复制库项目。因此,我创建了两个项目,一个是 ProjectA ,另一个是 LibraryA 。这两个项目都位于 \ StudioProjects 文件夹中。我正在尝试从 ProjectA 引用 LibraryA ,但标题出现错误。

这是 settings.gradle 项目中的

include ':app'
include ':LibraryA'
project(':LibraryA').projectDir = new File('../LibraryA')

这是项目的app build.gradle 的依赖项
dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    testCompile 'junit:junit:4.12'
    compile 'com.android.support:appcompat-v7:23.1.1'
    compile 'com.android.support:design:23.1.1'
    compile project(':LibraryA')
}

我正在使用 Android Studio 1.5.1

如果我从依赖关系中删除compile project(':LibraryA'),它将正常构建,但是,那么我将无法从ProjectA内的LibraryA引用类。

最佳答案

settings.gradle(ProjectA)中,您引用的是错误的文件夹。

include ':LibraryA'
project(':LibraryA').projectDir = new File('../LibraryA')

检查图像,LibraryA文件夹是文件夹。
Gradle正在搜索“模块” build.gradle,而此文件夹中有顶级文件配置。

您必须引用库中的模块
project(':LibraryA').projectDir = new File('../LibraryA/app')

当然,如果在顶层文件(LibraryA)中定义了某些任务或变量,则必须注意。在这种情况下,您必须将它们克隆到顶级文件(ProjectA)中

10-01 20:57