Gradle не ищет зависимости должным образом

Я пытаюсь добавить moko зависимость к мультиплатформе kotlin на gradle.

org.gradle.internal.resolve.ArtifactNotFoundException: не удалось найти mvvm-liveata-0.9.1-samplessources.jar (dev.icerock.moko:mvvm-liveata: 0.9.1). Выполняется поиск в следующих местах: https://dl.bintray.com/icerockdev/moko/dev/icerock/moko/mvvm-livedata/0.9.1/mvvm-livedata-0.9.1-samplessources.jar

похоже, что части ссылки "-samplessources" там быть не должно, но я не знаю, как ее удалить.

3 ответа

Если кто-то еще сталкивается с аналогичной проблемой (с отсутствующим your-library-name-samplessources.jar) В основном это происходит, когда ваш мультиплатформенный проект пытается использовать библиотеку, которая не поддерживает все цели, которые вы объявили в своем проекте. . Например, у вас есть ios()target, а библиотека не создает никаких собственных артефактов. Чтобы понять, какие цели ваших проектов не охвачены библиотекой, вы можете попробовать создать свой проект, позвонив

      ./gradlew build  

Вы получите полную ошибку с описанием того, какой вариант библиотеки не был найден ( ios_x64 в моем случае):

Если вы начали получать это только недавно, вам может потребоваться явно настроить варианты библиотеки Android для публикации:

      kotlin {
    android {
        publishLibraryVariants("debug", "release")
    }
    ...
}

или

      kotlin {
    android {
        publishAllLibraryVariants()
    }
    ...
}

Я решил удалить цель jvm из gradle, похоже, библиотека moko еще не поддерживает jvm.

версии:kotlin 1.4.21moko-mvvm-*: 0.9.1

Другие вопросы по тегам