gpt4 book ai didi

android - Gradle:DefaultAndroidSourceDirectorySet to File using toString() 方法已被弃用

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:09:01 24 4
gpt4 key购买 nike

我想更新 Android 库项目的 Gradle 插件。新版本是 0.10.4。 Gradle 包装器位于 1.10。当我在项目上运行 ./gradlew install 时出现以下警告

Converting class com.android.build.gradle.internal.api. \
DefaultAndroidSourceDirectorySet to File using toString() method has
been deprecated and is scheduled to be removed in Gradle 2.0.
Please use java.io.File, java.lang.String, java.net.URL, or java.net.URI instead.

我不确定,但标记的行应该是原因:

// build.gradle

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

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

task androidSourcesJar(type: Jar) {
classifier = 'sources'
from android.sourceSets.main.java // <----
}

如何重写代码以消除警告?

最佳答案

android.sourceSets.main.java 没有您期望的类型。您将它传递给需要 File[] 的对象,但它实际上具有 com.android.build.gradle.internal.api.DefaultAndroidSourceDirectorySet 类型。如果您查看 API for Android sourceSets您会发现有一个 sourceDirs 方法可以返回您想要的内容。所以像这样设置你的任务:

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

关于android - Gradle:DefaultAndroidSourceDirectorySet to File using toString() 方法已被弃用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24225557/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com