Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/195.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
创建Android库AAR,包括javadoc和源代码_Android_Gradle_Android Studio_Android Gradle Plugin - Fatal编程技术网

创建Android库AAR,包括javadoc和源代码

创建Android库AAR,包括javadoc和源代码,android,gradle,android-studio,android-gradle-plugin,Android,Gradle,Android Studio,Android Gradle Plugin,我的团队正在开发一个Android库,用于我们开发的一些示例应用程序。该库创建为AAR文件。这是它的构造 apply plugin: 'com.android.library' apply from: 'deploy.gradle' android { compileSdkVersion 20 buildToolsVersion '20.0.0' packagingOptions { exclude 'LICENSE.txt' exclu

我的团队正在开发一个Android库,用于我们开发的一些示例应用程序。该库创建为AAR文件。这是它的构造

apply plugin: 'com.android.library'
apply from: 'deploy.gradle'

android {
    compileSdkVersion 20
    buildToolsVersion '20.0.0'
    packagingOptions {
        exclude 'LICENSE.txt'
        exclude 'LICENSE'
        exclude 'NOTICE'
    }
    defaultConfig {
        // Excluded for brevity
    }
    buildTypes {
        release {
            runProguard false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    lintOptions {
        abortOnError false
        // if true, check all issues, including those that are off by default
        checkAllWarnings true
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:support-v13:20.0.+'
    compile 'com.google.android.gms:play-services:5.+'
    compile 'com.squareup.retrofit:retrofit:1.6.1'
}
dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile ('com.mycompany.myapp:0.6.5-SNAPSHOT@aar') {
        transitive = true
        downloadJavadoc = true
        downloadSources = true
    }
}
以下是应用程序build.gradle的依赖项部分

apply plugin: 'com.android.library'
apply from: 'deploy.gradle'

android {
    compileSdkVersion 20
    buildToolsVersion '20.0.0'
    packagingOptions {
        exclude 'LICENSE.txt'
        exclude 'LICENSE'
        exclude 'NOTICE'
    }
    defaultConfig {
        // Excluded for brevity
    }
    buildTypes {
        release {
            runProguard false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    lintOptions {
        abortOnError false
        // if true, check all issues, including those that are off by default
        checkAllWarnings true
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:support-v13:20.0.+'
    compile 'com.google.android.gms:play-services:5.+'
    compile 'com.squareup.retrofit:retrofit:1.6.1'
}
dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile ('com.mycompany.myapp:0.6.5-SNAPSHOT@aar') {
        transitive = true
        downloadJavadoc = true
        downloadSources = true
    }
}

我可以使用所有的lib类,但是我看不到Javadocs和源代码。我如何包装我的AAR,使其包含源代码和Javadocs?

现在似乎无法完成。但是,在
deploy.gradle
中添加这些gradle任务时,会创建-javadoc.jar和-sources.jar

task androidJavadocs(type: Javadoc) {
    source = android.sourceSets.main.java.srcDirs
}

task androidJavadocsJar(type: Jar) {
    classifier = 'javadoc'
    baseName = artifact_id
    from androidJavadocs.destinationDir
}

task androidSourcesJar(type: Jar) {
    classifier = 'sources'
    baseName = artifact_id
    from android.sourceSets.main.java.srcDirs
}

artifacts {
//    archives packageReleaseJar
    archives androidSourcesJar
    archives androidJavadocsJar
}
之后,需要手动导入源代码和javadoc。根据
而且它们不能自动导入。

downloadJavadoc
downloadSources
compile
语句中不受支持;不知道那是从哪里来的。另请参见,虽然您的问题似乎更多地是关于如何在AAR中打包这些内容,而不是如何在包含这些内容时引用它们?这是正确的,Scott,我希望将源代码和javadoc打包到AAR中。我们正在使用的其他库(比如改型)附带了源代码和javadoc,但这些库被打包为JAR而不是AAR。您仍然在使用这种方法吗?还有,什么是工件id?我不再使用它了,对不起,关于这个问题有什么消息吗?有没有办法将javadoc添加到最终的aar文件中?我再也不能访问这个项目了,所以我不再使用它了,对不起。如果你在这方面需要额外的帮助,你可能应该发布一个新问题this@AlonMinski找到什么了吗?