HTTP/1.1 401 Несанкционировано при загрузке двоичного файла в bintray

Я пытаюсь загрузить модуль библиотеки Android из студии Android, а затем в этом блоге: https://inthecheesefactory.com/blog/how-to-upload-library-to-jcenter-maven-central-as-dependency/en

(1)

./граду установить

Результат:- ПОСТРОИТЬ УСПЕШНО

(2)

./gradlew build bintrayUpload

Результат: - Ошибка ниже -

ОШИБКА: сборка не удалась с исключением.

  • Что пошло не так: не удалось выполнить задачу ':acr:bintrayUpload'.
    #P7#

Я проверял много раз и уверен, что мое имя пользователя и apikey верны. (В имени пользователя я использую имя организации вместо имени пользователя bintray, потому что мой репозиторий создается в организации). Если у кого есть идеи, буду признателен за помощь :)


person Deven    schedule 10.10.2016    source источник


Ответы (2)


В Bintray ваше имя пользователя должно быть именем пользователя вашей учетной записи, а не организации. Если вы являетесь владельцем репозитория, механизм разрешений разрешит это действие.

В имени пользователя я использую название организации

Некоторые ссылки на документацию:

https://github.com/bintray/gradle-bintray-plugin#readme

https://bintray.com/docs/usermanual/formats/formats_mavenrepositories.html#_working_with_gradle

EDIT: Убедитесь, что вы используете параметр userOrg, так как ваш репозиторий находится под субъектом организации, а не под пользователем.

проверьте шаг 4 здесь: https://github.com/bintray/gradle-bintray-plugin#step-4-add-your-bintray-package-information-to-the-bintray-close

Вот рабочий build.gradle:

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.jfrog.bintray.gradle:gradle-bintray-plugin:1.7'
    }
}


plugins {
    id "com.jfrog.bintray" version "1.7"
}


apply plugin: 'com.jfrog.bintray'
apply plugin: 'java'

bintray {
    user = 'myuserusername'
    key = '**********'
    pkg {
        repo = 'gradlerepo'
        name = 'gradlepackage'
        userOrg = 'myorgname'
        version {
            name = '1.0-Final'
        }
    }
}
person galusben    schedule 10.10.2016
comment
Когда я использую имя пользователя вместо организации, я получаю сообщение об ошибке: - Не удалось создать пакет 'devsideal/maven/acr': HTTP/1.1 404 Not Found [сообщение: Repo 'maven' не найден] ....? - person Deven; 11.10.2016
comment
Вы должны использовать свое имя пользователя для аутентификации. Но используйте название вашей организации для пути к репозиторию. Здесь: github.com/bintray/ Вы используете свое имя пользователя. В пути репо укажите имя вашей организации. - person galusben; 11.10.2016
comment
Вы можете поделиться своим файлом build.gradle? - person galusben; 11.10.2016
comment
Я пропустил userOrg, теперь это решается добавлением просто userOrg = 'myorgname' в bintray, спасибо. - person Deven; 12.10.2016
comment
Привет @gba, я успешно загрузил свою первую библиотеку на jcenter, спасибо за вашу помощь :) Мне нужны были некоторые обновления в библиотеке, поэтому я удалил все файлы из bintray, снова собрал и успешно загрузил мою обновленную библиотеку с той же версией на bintray, но когда я синхронизирую, он все еще показывает старый, для обновления требуется некоторое время? Сколько раз ? ИЛИ я не могу обновить библиотеку до старой версии? Мне также нужно будет обновить версию библиотеки? - person Deven; 13.10.2016
comment
Поздравления с загрузкой обновлений на Bintray должны быть почти мгновенными, то есть загрузка происходит немедленно, но публикация может занять некоторое время (от секунд до минут). Я предлагаю вам обратиться в службу поддержки JFrog, так как кажется, что ваша проблема слишком специфична для этого... - person galusben; 13.10.2016
comment
Хорошо, спасибо гба. - person Deven; 14.10.2016
comment
@Deven, можешь загрузить пример на github? Я все еще получал ошибку 401 или 404 :( - person Sergey Molyak; 11.11.2016
comment
Вы спасаете мой день - person wanz; 03.08.2018

Я хотел бы добавить больше к ответу @gba здесь

Вместо того, чтобы напрямую включать ваше имя пользователя bintray и apikey, вы должны включить их в файл local.properties в корне вашего проекта. Файл local.properties по умолчанию добавляется в .gitignore и, следовательно, не загружается на gitup вместе с другими файлами. Это помогает сохранить ваше имя пользователя и apikey в безопасности.

bintray.user=<your bintray username>
bintray.apikey=<your bintray apikey>

Затем в вашем файле модуля gradle добавьте:

Properties properties = new Properties()
properties.load(project.rootProject.file('local.properties').newDataInputStream())

bintray {
    user = properties.getProperty("bintray.user")
    key = properties.getProperty("bintray.apikey")

    configurations = ['archives']
    pkg {
        repo = "maven"
        name = "<Your library name>"
        websiteUrl = <your siteUrl>
        vcsUrl = gitUrl
        licenses = ["Apache-2.0"]
        publish = true
    }
}

Ссылка: https://www.virag.si/2015/01/publishing-gradle-android-library-to-jcenter/

person Ashu    schedule 13.09.2018