在不对 android React Native 0.70/gradle 7.5.1/MacOS Monetary 应用程序进行任何更改的情况下,执行
npx react-native run-android
时会抛出错误。这是错误:
* What went wrong:
A problem occurred configuring root project 'xyz_app6'.
> Could not open proj generic class cache for build file '/Users/macair/Documents/code/js/xyz_app6/android/build.gradle' (/Users/macair/.gradle/caches/7.5.1/scripts/4fbdrhtkb1gqd0m7r89rbb30y).
> BUG! exception in phase 'semantic analysis' in source unit '_BuildScript_' Unsupported class file major version 63
这是 /Users/macair/ 下的 ls 输出:
0 drwxr-xr-x 10 macair staff 320 Aug 4 01:19 .gradle
这个错误似乎是无中生有的。删除
./gradle/7.5.1
没有帮助。在今天之前,该应用程序的 Android 版本运行良好,没有进行任何更改。该应用程序的 IOS 版本也运行良好。
更新:
/usr/libexec/java_home
输出为:
/opt/homebrew/Cellar/openjdk/19/libexec/openjdk.jdk/Contents/Home
java --version
输出是:
openjdk 19 2022-09-20
OpenJDK Runtime Environment Homebrew (build 19)
OpenJDK 64-Bit Server VM Homebrew (build 19, mixed mode, sharing)
brew 安装 JDK 17 后,在 android studio -> 项目结构中为应用程序选择 JDK 17。将指向 JDK 17 的 JAVA_HOME 添加到 .zshrc (MacOS Monetary)。
npx react-native run-android
启动成功。
我使用的是 JDK 版本 19,切换到版本 17 解决了我的问题。