【问题标题】:ERROR: cannot resolve this binary! in gradle build错误:无法解析此二进制文件!在 gradle 构建中
【发布时间】:2021-10-29 07:52:40
【问题描述】:

模块“lib-one”是这样的。它实现了一些二进制文件,然后我在本地发布它。

//: lib-one/build.gradle.kts

dependencies {
    implementation(platform("org.lwjgl:lwjgl-bom:3.2.3"))
    listOf(
        "", "-assimp", "-openal",
        "-opengl"
    ).map { lib ->
        implementation("org.lwjgl:lwjgl$lib")
        runtimeOnly("org.lwjgl", "lwjgl$lib", classifier = LWJGL.lwjglNatives)
    }
}


publishing {
    publications {
        register<MavenPublication>("lib-one-maven") {
            from(components["java"])
        }
    }
    repositories {
        maven {
            setUrl(System.getProperty("url.repo.local.snapshot"))
        }
    }
}

在这里,这个模块依赖于模块“lib-one”,但这给了我一个考验“无法解决这个二进制文件”

//: lib-two/build.gradle.kts
repositories {
    maven {
        setUrl(System.getProperty("url.repo.local.snapshot"))
    }
}


dependencies {
    implementation("com.demo:lib-one:0.0.1") // HERE! ERROR: could not resolve!
}

【问题讨论】:

    标签: java gradle gradle-kotlin-dsl


    【解决方案1】:

    我确实发现了问题,它在我的“settings.gradle”中。问题是存储库的顺序不正确。请参阅此处了解更多信息:https://docs.gradle.org/current/userguide/dependency_resolution.html#obtaining_module_metadata

    // this is the incorrect way for my build cuz while the subprojects are 
    // applying the next repo.
    // settings.gradle.kts
    dependencyResolutionManagement {
          repositories.mavenCentral()
    }
    

    【讨论】:

      猜你喜欢
      • 2021-02-26
      • 2018-11-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-10-21
      • 2018-07-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多