gradle无法解析配置的所有依赖关系':compile'

时间:2015-11-22 10:41:48

标签: gradle dependencies multi-project

我有一个需要帮助的依赖项问题。

我可以自己构建EGLSource fin。 但是当我尝试构建EGL2JS时,我得到了这个错误:

错误讯息:

:compileJava

FAILURE: Build failed with an exception.

* What went wrong:
Could not resolve all dependencies for configuration ':compile'.
> Could not find :swt-64:.
  Searched in the following locations:
      https://repo1.maven.org/maven2//swt-64//swt-64-.pom
      https://repo1.maven.org/maven2//swt-64//swt-64-.jar
  Required by:
      :EGL2JS:unspecified > EGL2JS:EGLSource:unspecified

为两个项目构建和设置文件:EGLSource和EGL2JS。

EGL2JS:settings.gradle

include ':EGLSource'
project(':EGLSource').projectDir    = new File(settingsDir, '../EGLSource')

EGL2JS:build.gradle

apply plugin: 'java'

repositories {
    mavenCentral()
}

dependencies {
    compile project(':EGLSource')
}

sourceSets {
    main {
        java.srcDirs = ['src', 'target/generated-sources']
    }
}

EGLSource:build.gradle

apply plugin: 'java'

repositories {
    flatDir {
        dirs 'lib'
    }
}

dependencies {
    compile name: 'swt-64'
}

sourceSets {
    main {
        java.srcDirs = ['src', 'target/generated-sources/antlr4']
    }
}

为什么EGL2JS抱怨EGLSource中的依赖?

我可以将swt-64.jar添加到EGL2JS。但是EGL2JS并不直接依赖于swt-64.jar,所以我不喜欢这个解决方案。

还有其他方法可以解决这种依赖关系吗?

1 个答案:

答案 0 :(得分:0)

由于原因,我不明白这会产生影响。

从存储库中删除flatFile 和改变依赖关系 从: 编译名称:'swt-64'

于: 依赖{     编译fileTree(dir:'lib',包含:'swt-64.jar') }

gradle依赖关系不再显示swt-64失败。