无法使用其最新版本为 Android 构建 Cordova 项目

Not able to build Cordova Project for Android using its Latest Version

我正在使用 Cordova 将我现有的 Android 应用程序版本 (API-27) 升级到 API-28。我正在使用最新版本的 Cordova,Gradle 和 Android。

  1. CORDOVA - 9.0.0 (cordova-lib@9.0.1)
  2. Gradle - 5.6.2
  3. Android - android-28

问题:


    A problem occurred evaluating project ':app'.
    > Could not initialize class com.android.build.gradle.internal.crash.PluginCrashReporter

我尝试了不同版本的 Cordova 和 downgrading/upgrading 的 Gradle 但无法解决这个问题。下面给出了附加信息,

Gradle-Wrapper.properties

distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.2-all.zip

build.gradle

dependencies {
classpath 'com.android.tools.build:gradle:3.3.0'
}

build.gradle: 也试过了

dependencies {
classpath 'com.android.tools.build:gradle:3.5.1'
}

下面给出了有关该问题的详细信息。

Checking Java JDK and Android SDK versions
**ANDROID_SDK_ROOT=C:\Program Files\Android\sdk (recommended setting)
ANDROID_HOME=C:\Program Files\Android\sdk (DEPRECATED)
Subproject Path: CordovaLib
Subproject Path: app**

FAILURE: Build failed with an exception.

* Where:
Build file 'D:\RandD\Mine\Chess\platforms\android\app\build.gradle' l
ine: 23

* What went wrong:
A problem occurred evaluating project ':app'.
> Could not initialize class com.android.build.gradle.internal.crash.PluginCrash
Reporter

* 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 3s
D:\RandD\Mine\Chess\platforms\android\gradlew: Command failed with ex
it code 1 Error output:
FAILURE: Build failed with an exception.

* Where:
Build file 'D:\RandD\Mine\Chess\platforms\android\app\build.gradle' l
ine: 23

* What went wrong:
A problem occurred evaluating project ':app'.
> Could not initialize class com.android.build.gradle.internal.crash.PluginCrash
Reporter

* 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 3s
Picked up _JAVA_OPTIONS: -Xmx512M

如果我在这里遗漏了什么,请突出显示。感谢您的帮助。

根据我的经验(在 Windows 中)编辑 build.gradle 来更改 Gradle 版本 是不够的,而是尝试安装全球不同的版本。本指南对此进行了详细说明:

Upgrading Gradle for Cordova mobile apps in Windows

此外,盲目地将 Cordova 应用程序的所有内容都切换到最新版本并不是最聪明的主意,您应该继续使用所有内容的非最新版本,除非您确定您需要最新版本才能获得非常具体的应用程序原因。

Before jumping directly to latest gradle version, check compatibility with your Cordova environment. For safety reasons, I wont use anything newer than gradle 4.x on Cordova 7.1.0 alongside Visual Studio, otherwise some issues could be introduced.

此问题已解决,以下是我遵循的步骤。

  1. 删除了我系统上与 Android SDK 相关的所有环境变量。
  2. 已安装 "Android Studio" 的最新版本。
  3. 使用 "Android Studio" 创建了一个应用程序并构建它并生成了 APK。
  4. 现在,我检查了使用"Android Studio"开发的应用程序的gradle文件,并在Cordova的gradle文件中给出了相同的版本。
  5. 我能够构建并生成 APK(通过 CORDOVA)

带走积分: 1. 我的环境变量(gradle、android SDK)可能存在一些问题,导致生成构建时出现问题。 2. 我可能错过了添加环境变量,这是通过安装 Android Studio 并通过它生成 Build 来解决的。