我将如何在 MAC 上更新我的 ANDROID_SDK_ROOT / JAVA_HOME / PATH 环境变量以构建 Android

How would I update my ANDROID_SDK_ROOT / JAVA_HOME / PATH environment variables on a MAC to build Android

我正在构建 Ionic Cordova 跨平台应用程序。当我 运行 ionic cordova build android 我得到以下错误。

cordova-android-support-gradle-release: Android platform: V7+
cordova-plugin-androidx-adapter: Processed 65 source files in 1452ms
Checking Java JDK and Android SDK versions
ANDROID_SDK_ROOT=undefined (recommended setting)
ANDROID_HOME=/Users/anonymous/Library/Android/sdk (DEPRECATED)
Requirements check failed for JDK 8 ('1.8.*')! Detected version: 15.0.1
Check your ANDROID_SDK_ROOT / JAVA_HOME / PATH environment variables.
[ERROR] An error occurred while running subprocess cordova.

这是我的 java 版本:

java 版本 "15.0.1" 2020-10-20 Java(TM) SE 运行时环境(build 15.0.1+9-18) Java HotSpot(TM) 64 位服务器 VM(内部版本 15.0.1+9-18,混合模式,共享)

一切正常,直到我下载了最新的 Java SDK,现在我无法构建 Android。

我在另一个 Stack post 中读到这很糟糕: java 版本 "15.0.1" 2020-10-20 Java(TM) SE 运行时环境(build 15.0.1+9-18) Java HotSpot(TM) 64 位服务器 VM(内部版本 15.0.1+9-18,混合模式,共享)

我不太确定如何解决这个问题以及为什么当我检查 Java -version 时 Java SDK 没有出现。

我在我的 .bash_profile 中设置了这个 ANDROID_HOME=/Users/anonymous/Library/Android/sdk ANDROID_SDK_ROOT=~/Library/Android/sdk

Android 完全支持 java 7 以及 java 8 和 9 功能的子集。所以,是的,您下载的 JDK 15 与 Android 开发平台不兼容。

AdoptOpenJDK 1.8 是 Android 开发的首选 JDK(不要引用我的话,可能会有分歧)

然后,从构建日志中可以看到ANDROID_SDK_ROOT=undefined (recommended setting)。没关系,ANDROID_SDK_ROOT 可以是未定义的。

下载正确的 JDK 后,您需要设置的唯一两个环境是:

export JAVA_HOME=/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home
export ANDROID_HOME=/Users/$USER/Library/Android/sdk