ОШИБКА: не удается разрешить этот двоичный файл! в gradle build

#java #gradle #gradle-kotlin-dsl

Вопрос:

для модуля «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!
}
 

Ответ №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()
}