在编辑项目时遇到报错:
org.gradle.api.tasks.TaskExecutionException: Execution failed for task ':app:processDebugResources'.
......
根据经验应该是项目里的资源文件问题,要想获取更详细的信息一般在命令行里执行:
gradlew compileDebugSource --stacktrace -info
或gradlew assembleDebug --info
如果异常是:
Execution failed for task ':app:compileDebugJavaWithJavac'
可以用 gradlew compileDebugJavaWithJavac命令来见证奇迹!
但是很意外的是我在执行这两条命令时提示"gradlew"不是内部或外部命令,也不是可运行的程序或批处理文件.甚至gradle命令也不好用了。于是重新添加了下gradle的全局变量。
首先项目中gradle-wrapper.properties的distributionPath=wrapper/dists,于是打开AS的Setting->Build,Execution,Deployment->Gradle。找到最下面一行“Service directory path“中设置的gradle的缓存路径。
然后,去该路径下的wrapper/dists文件件下到项目中用的gradle的版本(本项目用的是4.4-all)的bin文件夹:C:\.gradle\wrapper\dists\gradle-4.4-all\9br9xq1tocpiv8o6njlyu5op1\gradle-4.4\bin。将该url添加到环境变量path中。如果没有对应的gradle的版本就需要让AS自动下载或者自己手动去下载对应的gradle进行安装。
测试gradle在命令行是否好用。正常应该是好用的。
回到AS命令行中,发现gradle好用了 但是 gradlew还是不好用。于是在命令行中输入gradle wrapper。
终于gradlew好用了。