Gradle 5中工件的分类?

Ali*_*lix 7 android gradle

问题:发布 gradle 项目的 javadoc 和源代码。以下代码运行良好,即使在 Gradle 5.1.1 上也是如此:

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

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

task javadocJar(type: Jar, dependsOn: javadoc) {
    classifier = 'javadoc'
    from javadoc.destinationDir
}

artifacts {
    archives javadocJar
    archives sourcesJar
}
Run Code Online (Sandbox Code Playgroud)

但是,在 Gradle 5.1.1 中,不推荐使用以下语句:

classifier = 'sources'

...

classifier = 'javadoc'
Run Code Online (Sandbox Code Playgroud)

查看评估方法名称的 javadoc 显示:

已弃用。使用 getArchiveClassifier()

来源:https : //docs.gradle.org/current/javadoc/org/gradle/api/tasks/bundling/AbstractArchiveTask.html#setClassifier-java.lang.String-

这对我来说没有意义。

我的代码需要进行哪些更改才能继续工作而不被弃用?

Joe*_*ell 13

以下不会显示弃用警告:

    archiveClassifier.set("sources")

    archiveClassifier.set("javadoc")
Run Code Online (Sandbox Code Playgroud)