首页 > 解决方案 > 在 macbook 上运行 Gradle

问题描述

我最近买了一台 macbook,并尝试使用 brew install gradle 安装 Gradle

当我执行 gradle -v 时,我的 Gradle 规范没有问题,当我尝试在我的项目上运行 Gradle 任务时,我得到了这个错误:

org.gradle.api.tasks.SourceSetOutput.getClassesDir()Ljava/io/File;

在 Windows 上,我通常通过执行 ./gradlew task_name 来编译项目,但 ./gradlew 在 Mac OS 上不起作用。

我做错了什么?

标签: macosgradlegradlew

解决方案


SourceSetOutput.getClassesDir()在 Gradle 4 中已弃用并在 Gradle 5 中删除。现在是SourceSetOutput.getClassesDirs(). 我猜你在 macbook 上运行的 Gradle 版本比在 Windows 机器上运行的要新。一个简单的解决方法是降级 Gradle 版本。

如果您想真正修复您的构建以使用 Gradle 5+,我建议您--stacktrace在命令行上运行 with 以找出使用旧 API 的内容(即,它是您的 Gradle 脚本还是您的插件之一)。

也许修复就像将一个或两个插件升级到支持 Gradle 5+ 的新版本一样简单


推荐阅读