Проблемы с загрузкой библиотеки Android в Bintray
Я потратил несколько дней, пытаясь найти каждый учебник, чтобы попытаться опубликовать мою библиотеку Android GnarlyDialog в Bintray.
Некоторое время назад я подошел, где ресурсы были загружены в Bintray, и на них можно было ссылаться в приложении, выполнив R.drawable.library_resource_name
но сам код библиотеки никогда успешно не загружался.
Я удалил все помехи в файлах build.gradle из всех руководств и подумал, может ли кто-нибудь помочь мне показать, что именно мне нужно добавить в файлы gradle, чтобы успешно загрузить библиотеку в Bintray.
Я использую новейшую версию AndroidStudio 3.2.1 с последней версией Gradle 4.6, предложенной AndroidStudio.
Имя пользователя и ключ API Bintray находятся в файле local.properties как bintrayUserName
а также bintrayApiKey
и у меня есть репо на Bintray по имени maven
где я хотел бы опубликовать свою библиотеку Android в.
Наконец, многие из руководств gradlew clean build install bintrayUpload
из терминала командной строки, который всегда терпит неудачу с парой разных ошибок. Я убедился, что Android Studio установлен на Use embedded JDK
но эти команды терминала все еще не работают. Даже простой gradlew tasks
команда завершается с ошибкой, описанной ниже, поэтому невозможность запуска заданий gradle из командной строки также может быть частью проблемы. Все Build -> MakeProject / CleanProject / RebuildProject прекрасно работают из IDE.
Заранее благодарим за помощь в устранении этой ошибки и за помощь в публикации моей библиотеки Android!
gradlew tasks
ошибка команды
FAILURE: сборка не удалась, исключение.
Где: файл сборки 'C:\***********\GnarlyDialogSampleApp\app\build.gradle' строка: 1
Что пошло не так:
Возникла проблема при оценке проекта ": приложение".
Неинициализированный объект существует в обратной ветви 70
Детали исключения:
Место нахождения:
ком / Android/ построить / Gradle/ внутренний / охват /BuildArtifactsHolder.newArtifact(LCOM / Android/ строительство / API / артефакт /BuildableArtifact;)LCOM / Android/ построить / Gradle/ внутренний / сфера /BuildArtifactsHolder$BuildableArtifactData; @119: перейти
Причина:
Ошибка в байт-коде
Байт-код: 0x0000000: BB02 0559 2bb9 0208 0100 C000 b82b b902 0x0000010: 0c01 0001 b902 1202 0059 +1302 14b8 0051 0x0000020: C001 734d 3a0d 3a0c 3a0b 2c4e BB01 a659 0x0000030: 2C10 0ab8 0177 b701 a7c0 00b8 3a04 2db9 0x0000040: 018e 0100 3a05 1905 B901 9401 0099 002D 0x0000050: 1905 B901 9801 003A 0619 0419 06c0 00f1 0x0000060: 3a07 3a0e 1907 b902 1501 003A 0f19 0e19 0x0000070: 0fb9 01ad 0200 57a7 ffcf 1904 C001 af3a 0x0000080: 0e19 0b19 0c19 0d19 0eb7 0218 b0
Таблица стековых карт: full_frame(@70,{Object[#2],Object[#83],Object[#371],Object[#371],Object[#184],Object[#400],Top,Top,Top, Вверх, Вверх, Неинициализированный [#0], Неинициализированный [#0], Объект [#184]},{}) same_frame(@122)
Мой файл build.gradle верхнего уровня проекта:
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
google()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.2.1'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
google()
jcenter()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
Мой файл библиотеки уровня файла build.gradle
apply plugin: 'com.android.library'
android {
compileSdkVersion 26
defaultConfig {
minSdkVersion 19
targetSdkVersion 26
versionCode 7
versionName "0.1.6"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
debug {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:26.1.0'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
}
Мой пример файла уровня приложения build.gradle
apply plugin: 'com.android.application'
android {
compileSdkVersion 26
defaultConfig {
applicationId "me.seandillon.gnarlydialogsampleapp"
minSdkVersion 19
targetSdkVersion 26
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'com.android.support:appcompat-v7:26.1.0'
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
implementation 'com.android.support:design:26.1.0'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
// Add the library project locally as a dependency
implementation project(':gnarlydialog')
}
Кроме того, мой файл gradle-wrapper.properties, показывающий последнюю версию Gradle 4.6,
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-4.6-all.zip
Также gradlew --version
выводит это (говорит Windows 8.1, но я на Windows 10)
------------------------------------------------------------
Gradle 4.6
------------------------------------------------------------
Build time: 2018-02-28 13:36:36 UTC
Revision: 8fa6ce7945b640e6168488e4417f9bb96e4ab46c
Groovy: 2.4.12
Ant: Apache Ant(TM) version 1.9.9 compiled on February 2 2017
JVM: 1.8.0_20 (Oracle Corporation 25.20-b23)
OS: Windows 8.1 6.3 amd64