gradle 與 gradlew不是內部或外部命令,也不是可運行的程序或批處理文件的問題。

在編輯項目時遇到報錯:

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好用了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章