Java Gradle父项目不使用子存储库?

Java Gradle父项目不使用子存储库?,java,gradle,Java,Gradle,这就是我对它的解释。我有一个包含两个模块的多项目构建:编解码器和内容。当我尝试构建项目时,它说它找不到存储库。但在构建单个模块时,没有错误。此外,evaluationDependsOn(“:codec”)似乎也没有帮助 Could not resolve all dependencies for configuration ':compileClasspath'. > Cannot resolve external dependency commons-codec:commons-code

这就是我对它的解释。我有一个包含两个模块的多项目构建:编解码器和内容。当我尝试构建项目时,它说它找不到存储库。但在构建单个模块时,没有错误。此外,evaluationDependsOn(“:codec”)似乎也没有帮助

Could not resolve all dependencies for configuration ':compileClasspath'.
> Cannot resolve external dependency commons-codec:commons-codec:1.5 because no repositories are defined.
  Required by:
      :multiproject-unified:unspecified > multiproject-unified:codec:unspecified
父构建。渐变:

apply plugin: 'java'

dependencies {
    compile project(':codec')
    compile project(':content')
}
设置。渐变

include 'codec',
        'content'
apply plugin: 'java'

repositories {
    mavenCentral()
}

dependencies {
    compile 'commons-codec:commons-codec:1.5'
}
apply plugin: 'java'

repositories {
    mavenCentral()
}
:编解码器构建.gradle

include 'codec',
        'content'
apply plugin: 'java'

repositories {
    mavenCentral()
}

dependencies {
    compile 'commons-codec:commons-codec:1.5'
}
apply plugin: 'java'

repositories {
    mavenCentral()
}
:内容构建.gradle

include 'codec',
        'content'
apply plugin: 'java'

repositories {
    mavenCentral()
}

dependencies {
    compile 'commons-codec:commons-codec:1.5'
}
apply plugin: 'java'

repositories {
    mavenCentral()
}

尝试在父项目中声明整个项目的存储库:

allprojects {
  apply plugin: 'java'
  repositories {
    mavenCentral()
  }
}

我也遇到过同样的问题,从未真正找到答案。我通常手动将依赖项添加到父级。为什么要使用这样的配置?向家长添加回购协议是一种常见做法,只是出于好奇问:)@MarkBramnik-hmm,没错,有道理但是,我仍然认为这有点令人困惑。@MarkBramnik我们使用模块来隐藏特定于供应商的代码。子模块具有特定于供应商的maven repo,现在我需要将该maven repo同时添加到子模块和父模块,这有点难看,因为父模块本身不包含任何供应商代码:-S@bah你找到解决这个问题的办法了吗?在我的情况下,子项目在其中一个存储库上具有授权,我不想将这些详细信息提取给父项目。这会起作用,但将子项目实施详细信息提取给父项目并不好。