我正在尝试将外部gradle项目( Lib-2 )的依赖项添加到另一个gradle项目( Lib-1 )中,在该项目中使用它(的项目-1 )。尝试同步 Lib-1 时,我收到错误
配置名称'默认'没找到。
虽然我知道此错误通常是由于缺少 build.gradle 文件引起的,但这两个文件都有相关的gradle文件,如下图所示的文件树所示。
- Containing File
| Lib-1
|build.gradle
|settings.gradle
|Module-1
|src
|build.gradle
| Lib-2
|build.gradle
|settings.gradle
|Module-2
|src
|build.gradle
Lib-1 的 settings.gradle 文件
include 'Module-2'
include ':Lib-2'
project(':Lib-2').projectDir = new File(rootDir,'../Lib-2')
模块1 的 build.gradle 文件中的依赖项
dependencies {
compile project(':Lib-2')
}
运行" build --info"给出以下转储。
开始构建 使用设置文件' / Users / $ user / Containing File / Lib-1 / settings.gradle'评估设置。 项目已加载。根项目使用构建文件' / Users / $ user / Containing File / Lib-1 / build.gradle'。 包含的项目:[根项目' Lib-1',项目':Lib-2',项目':模块-1'] 评估根项目' Lib-1'使用构建文件' / Users / $ user / Containing File / Lib-1 / build.gradle'。 评估项目':Lib-2'使用构建文件' / Users / $ user / Containing File / Lib-2 / build.gradle'。 评估项目':模块-1'使用构建文件' / Users / $ user / Containing File / Lib-1 / Module-1 / build.gradle'。 发布 评估所有项目。 选定的主要任务' build'来自项目:
失败:构建因异常而失败。
- 出了什么问题: 无法确定任务的依赖关系':Module-1:javadoc'。 配置名称'默认'没找到。
答案 0 :(得分:1)
添加依赖项时,此错误通常意味着找不到您添加的新项目。在这种情况下会发生这种情况,因为当您在主lib设置文件中添加它时,模块不包含该设置。
你可以在这里走两条路: 1.为每个lib创建一个build.gradle文件,并在其中定义每个模块。然后,通过相同的构建文件编译每个模块(如果需要,单独编译)。 2.使用多项目设置 - 您将能够从模块文件夹进行编译,但需要另一个设置文件。
由于它是一个模块,而不是多个项目,因此选项1似乎是正确的方法。只需为每个模块添加配置,并设置相应的依赖项等。像这样:
configurations {
module1
module2
}
sourceSets{
module1 {
java {
srcDir 'src/module1'
}
}
module2 {
java {
srcDir 'src/module2'
}
}
}
dependencies {
module1 'some.dependency'
module2 'some.other.dependenty'
}