Android 无法获取未知属性‘;classesDir’;安卓工作室

Android 无法获取未知属性‘;classesDir’;安卓工作室,android,gradle,Android,Gradle,请帮我找出错误 Could not get unknown property 'classesDir' for main classes of type org.gradle.api.internal.tasks.DefaultSourceSetOutput. Open File I代码 task dist(type: Jar) { from files(sourceSets.main.output.classesDir) from files(sourceSet

请帮我找出错误

  Could not get unknown property 'classesDir' for main classes of type org.gradle.api.internal.tasks.DefaultSourceSetOutput.
 Open File
I代码

    task dist(type: Jar) {
    from files(sourceSets.main.output.classesDir)
    from files(sourceSets.main.output.resourcesDir)
    from {configurations.compile.collect {zipTree(it)}}
    from files(project.assetsDir);

    manifest {
        attributes 'Main-Class': project.mainClassName
    }
}
发行副本

SourceSetOutput.getClassesDir()在Gradle 4中被弃用,在Gradle 5中被删除。请在Gradle 5中使用getClassesDirs()

在您的例子中,问题在于

sourceSets.main.output.classesDir
换成

sourceSets.main.output.classesDirs
此外,您可以省略任务定义中的大多数
文件(…)
调用,因为大多数
Jar
tasks方法都接受
Object
。例如:

task dist(type: Jar) {
    from sourceSets.main.output.classesDirs
    from sourceSets.main.output.resourcesDir
    from {configurations.compile.collect {zipTree(it)}}
    from project.assetsDir

    manifest {
        attributes 'Main-Class': project.mainClassName
    }
}