weex build android 时 gradle 版本问题

问题

运行 weex build android 命令时 ,出现如下错误

BUILD FAILED in 1s

    at checkExecSyncError (child_process.js:601:13)
    at Object.execSync (child_process.js:641:13)
    at C:\Users\feng\.xtoolkit\node_modules\weexpack\lib\build\android.js:156:20
    at new Promise (<anonymous>)
    at buildApp (C:\Users\feng\.xtoolkit\node_modules\weexpack\lib\build\android.js:152:10)
    at <anonymous>
Error: Error: Command failed: call gradlew.bat  assembleRelease
isLibProject: false, isAppProject: true
weex_plugin: []

FAILURE: Build failed with an exception.

* What went wrong:
A problem occurred configuring project ':app'.
> Failed to notify project evaluation listener.
   > com.android.build.gradle.tasks.factory.AndroidJavaCompile.setDependencyCacheDir(Ljava/io/File;)V

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 1s

weex build android 时 gradle 版本问题

原因

platforms\android\gradle\wrapper 文件夹下 gradle-wrapper.properties 文件中的 distributionUrl 指定的 gradle 版本与 platforms\android 文件夹下 build.gradle 文件中的依赖 classpath ‘com.android.tools.build:gradle:3.3.0’ 指定的 gradle 版本冲突。其中 plugin 插件和 gradle 的对应关系如下(对应关系网址):
weex build android 时 gradle 版本问题

解决办法

设置 platforms\android\gradle\wrapper 文件夹下 gradle-wrapper.properties 文件中的 distributionUrl=file:///C:/Users/feng/.gradle/wrapper/dists/gradle-4.10.1-all.zip

weex build android 时 gradle 版本问题

设置 platforms\android 文件夹下 build.gradle 文件中的依赖 classpath ‘com.android.tools.build:gradle:3.3.0’
weex build android 时 gradle 版本问题

参考:
1.关于 AndroidJavaCompile.setDependencyCacheDir 的解决办法
2.Android studio 中gradle版本不一样导致运行问题Error:Unable to find method 'com.android.build.gradle.tasks.factory
3.android依赖
4.weexplugin-gradle-plugin版本