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