我通过删除~/这样的本地目录来清理整个项目。gradle ~ /。m2 ~。~/workspace/project/。gradle和选择文件-> Invalidate Caches / Restart…在Android Studio。 现在执行./gradlew命令会得到以下输出:

usr$ ./gradlew tasks
Error: Could not find or load main class org.gradle.wrapper.GradleWrapperMain

不用说,我删掉的太多了,问题是怎样才能重新修复呢?你有什么解决办法吗?


当前回答

我修复了这个问题的下一个修复(也许它会帮助别人):

只需检查项目文件夹的父文件夹名称中是否包含空格或其他禁止使用的字符。如果存在,请移除。

"C:\Users\someuser\Test Projects\testProj" -在本例中,"TestProjects"应该是"TestProjects"。

其他回答

在我的情况下,我在复制gradle文件夹时遗漏了包装器子文件夹,并得到了相同的错误。

无法找到或加载主类org.gradle.wrapper.GradleWrapperMain

如果从其他位置复制包装器,请确保具有正确的文件夹结构。

├── build.gradle
├── gradle
│   └── wrapper
│       ├── gradle-wrapper.jar
│       └── gradle-wrapper.properties
├── gradlew
├── gradlew.bat
└── settings.gradle

我顺着上面的答案发现了这个。如果你有这个问题,一定要强制推送jar和属性文件。这两期之后,我就不再看这期了。

git add -f gradle/wrapper/gradle-wrapper.jar
git add -f gradle/wrapper/gradle-wrapper.properties

它也可能发生,你失去了gradle文件夹的执行权限,所以

sudo chmod -R +x ./gradle

将有助于解决问题。

@HankCa也解决了我的问题。我决定将危险的**/*.jar忽略改为src/**/lib/*.jar,以避免将来出现此类问题。忽略以**/*开头的内容有点太危险了,至少对我来说是这样。通过观察得到。gitignore row背后的想法总是一个好主意。

我卸载gradle并重新安装它,然后创建一个新的包装器。

$ sudo apt remove gradle
$ sudo apt-get install gradle
$ gradle wrapper