我正在尝试测试引用而不复制库项目。所以我创建了两个项目,一个是 ProjectA ,另一个是 LibraryA 。这两个项目都位于 \ StudioProjects 文件夹中。我正在尝试从 ProjectA 引用 LibraryA ,我在标题处收到错误。
ProjectA
settings.gradleinclude ':app'
include ':LibraryA'
project(':LibraryA').projectDir = new File('../LibraryA')
以下是来自 ProjectA 的应用 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中引用类。
答案 0 :(得分:3)
在settings.gradle
(ProjectA)中,您指的是错误的文件夹。
include ':LibraryA'
project(':LibraryA').projectDir = new File('../LibraryA')
检查图像时,LibraryA
文件夹是 root 文件夹
Gradle正在搜索“module”build.gradle,而在此文件夹中有一个顶级文件配置。
您必须参考LibraryA中的模块
project(':LibraryA').projectDir = new File('../LibraryA/app')
当然,如果在顶级文件(LibraryA)中定义了某些任务或变量,则必须注意。在这种情况下,您必须在顶级文件(ProjectA)中克隆它们
答案 1 :(得分:0)
您的某个项目没有有效的gradle文件。如果您的库不是gradle项目,请将其转换为gradle项目。
如果您将库添加为模块并选择" gradle"当你导入我想你会解决你的问题。
答案 2 :(得分:-1)
我只是不明白你想做什么。但请尝试更改以下行:
project(':LibraryA').projectDir = new File('../ProjectA')