首页 > 解决方案 > 独立时无法发布Android库

问题描述

以上是我尝试将库上传到 jitpack 时的日志(没有任何应用示例,仅应用插件:'com.android.library')。我上传了至少 3 个项目,其中包含示例应用程序,它运行良好,但这个不是。我真的不知道我面临什么,所以请任何人告诉我一些解决方案。

我在这里发布完整的日志。

https://jitpack.io/com/github/cuong292/gemcore/-757446dc0a-1/build.log

下面是我的应用级构建 gradle 文件。

apply plugin: 'com.android.library'
android {
    compileSdkVersion 29
    defaultConfig {
        minSdkVersion 17
        targetSdkVersion 29
        versionCode 1
        versionName "1.0"
    }

buildTypes {
    release {
        debuggable false
    }
}
}

dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    api "com.android.support:appcompat-v7:28.0.0"
    api "com.android.support:support-v4:28.0.0"
    api "com.android.support:design:28.0.0"
    api "com.android.support:cardview-v7:28.0.0"

    compile "com.jakewharton:butterknife:8.4.1"

    annotationProcessor "com.jakewharton:butterknife-compiler:8.4.1"

    api "com.github.bumptech.glide:glide:4.3.0"
    api "com.google.guava:guava:27.0.1"
    api "org.greenrobot:eventbus:3.1.1"

    api 'org.apache.commons:commons-lang3:3.8.1'
    api 'uk.co.chrisjenx:calligraphy:2.3.0'
    api 'com.makeramen:roundedimageview:2.3.0'
}

// build a jar with source files
task sourcesJar(type: Jar) {
    from android.sourceSets.main.java.srcDirs
    classifier = 'sources'
}

task javadoc(type: Javadoc) {
    failOnError false
    source = android.sourceSets.main.java.sourceFiles
    classpath += project.files(android.getBootClasspath().join(File.pathSeparator))
    classpath += configurations.implementation
}

// build a jar with javadoc
task javadocJar(type: Jar, dependsOn: javadoc) {
    classifier = 'javadoc'
    from javadoc.destinationDir
}

artifacts {
    archives sourcesJar
    archives javadocJar
}

标签: androidandroid-libraryjitpack

解决方案


最后,经过数小时的工作和基于@GabrieleMariotti(非常感谢你)的建议,我发现我的独立库需要一个指定的构建工具。只需添加构建脚本和所有项目(通常在你的 build.gradle 项目级别内)到让它工作。记得删除所有任务{}


推荐阅读