Gradle не находит файл .aar в репозитории Maven на Bintray

... даже если ошибка сообщает о правильном URL-адресе загрузки.

(Подробности Bintray ниже.)

Репозиторий Gradle

repositories {
    jcenter()
    maven { url 'https://dl.bintray.com/myUsername/myRepo/' }
}

Зависимости

compile('com.domain.groupid:library-core:v1.2.3@aar') {
    transitive=true
}
compile('com.domain.groupid:library-support:v1.2.3@aar') {
    transitive=true
}

Ошибка

Error:Could not find library-core.aar (com.domain.groupid:library-core:v1.2.3).
Searched in the following locations:
    https://dl.bintray.com/myUsername/myRepo/com/domain/groupid/library-core/v1.2.3/library-core-v1.2.3.aar

Если я скопирую этот URL-адрес, я смогу загрузить его в окне выхода из системы. Почему у Gradle есть проблемы с этим?

Существует еще одна похожая зависимость компиляции (обозначенная здесь как library-support), но я предполагаю, что она не дошла до нее, потому что эта не удалась первой.

Настройка...

У меня есть личное общедоступное репо на Bintray с двумя библиотеками для Android.

https://bintray.com/myUsername/myRepo/library-core
https://bintray.com/myUsername/myRepo/library-support

Обе версии загружаются по правилу bintray в сценариях gradle моей библиотеки. Версии загружены, я вижу их в пользовательском интерфейсе bintray, и я могу загрузить их и увидеть, что они соответствуют моим ожиданиям:

https://dl.bintray.com/myUsername/myRepo/com/domain/groupid/library-core/maven-metadata.xml
https://dl.bintray.com/myUsername/myRepo/com/domain/groupid/library-core/library-core-v1.2.3/library-core-v1.2.3-sources.jar
https://dl.bintray.com/myUsername/myRepo/com/domain/groupid/library-core/library-core-v1.2.3/library-core-v1.2.3.aar
https://dl.bintray.com/myUsername/myRepo/com/domain/groupid/library-core/library-core-v1.2.3/library-core-v1.2.3.pom
// Same for library-support. All of these download in a signed out window.

Gradle ожидает чего-то другого?


person Anm    schedule 20.07.2017    source источник
comment
Не могли бы вы предоставить актуальную ссылку на ваши зависимости от Bintray? Я хотел бы воспроизвести проблему. Кстати: очень редко используется префикс v для версии библиотек в Maven. Подразумевается, что этот атрибут является версией. Возможно, это как-то связано с вашей проблемой.   -  person Benjamin Muschko    schedule 23.07.2017
comment
Вы - победитель. Я повторно загрузил без v в названии версии и обновил свои зависимости, чтобы они соответствовали, и жизнь прекрасна. Пожалуйста, опубликуйте свой комментарий в качестве ответа, чтобы я мог наградить вас некоторой репутацией.   -  person Anm    schedule 23.07.2017
comment
Большой! Пожалуйста, найдите ответ ниже.   -  person Benjamin Muschko    schedule 25.07.2017


Ответы (2)


Maven обычно не ожидает префикса v в атрибуте версии. Это подразумевается порядком синтаксиса координат: <group>:<name>:<version>. Использование семантического управления версиями для номера версии должно помочь.

person Benjamin Muschko    schedule 24.07.2017

У меня была аналогичная проблема, я добавил еще один ответ, чтобы, надеюсь, помочь другим в будущем.

В моем случае я сначала загрузил только файл .jar в репозиторий maven, а затем, когда я загрузил файл .aar, он не смог его найти, хотя URL-адрес ошибки правильно связан с артефактом.

Добавление

--refresh-dependencies

к моей команде gradle исправила проблему для меня

person Chris    schedule 30.05.2018