使用 命令 flutter doctor --verbose
可以查看当前项目中,使用的java的版本。
[✓] Android Studio (version 2024.2)
• Android Studio at /Applications/Android Studio.app/Contents
• Flutter plugin can be installed from:
https://plugins.jetbrains.com/plugin/9212-flutter
• Dart plugin can be installed from:
https://plugins.jetbrains.com/plugin/6351-dart
• Java version OpenJDK Runtime Environment (build 21.0.4+-12422083-b607.1)
在 Flutter 项目中,使用的 Java 版本默认与 Android Studio 环境相关联。根据你的输出,Java 二进制路径指向:
/Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
这表明你的项目当前正在使用 Android Studio 内置的 JDK,而不是手动安装的系统 JDK。因此,Java 版本由 Android Studio 配置决定。如果需要更改 Java 版本,必须调整 Android Studio 或 Gradle 环境的配置。以下详细说明项目中的配置影响点:
Flutter 默认使用 Android Studio 自带的 JDK,这是出于简化开发环境的考虑。内置的 JDK 位置是:
/Applications/Android Studio.app/Contents/jbr/
你可以手动更改项目的 Gradle 或 Flutter 配置,指定使用其他版本的 JDK。
local.properties
文件在 Flutter 项目的 android/local.properties
文件中,你可以配置 Android SDK 和 Gradle 的路径。如果你需要更改项目的 JDK 版本,可以手动在这里添加一行,明确指定 JDK 的路径。
路径:<项目根目录>/android/local.properties
添加内容:
org.gradle.java.home=/path/to/your/jdk17
将 /path/to/your/jdk17
替换成正确的 JDK 安装路径。例如:
org.gradle.java.home=/Library/Java/JavaVirtualMachines/openjdk-17.jdk/Contents/Home
如果你的 local.properties
文件中没有手动指定 JDK,默认会使用 Android Studio 的内置 JDK。
gradle-wrapper.properties
文件Gradle 使用的版本与 Java 环境直接相关。你可以检查并修改 android/gradle/wrapper/gradle-wrapper.properties
文件中的配置,确保 Gradle 的版本与 Java 版本兼容。
路径:<项目根目录>/android/gradle/wrapper/gradle-wrapper.properties
检查内容:
distributionUrl=https\://services.gradle.org/distributions/gradle-7.6-all.zip
gradle-7.6-all.zip
)。如果 Gradle 的版本过低,会导致与 Java 21 不兼容的问题。
项目中使用的 Java 版本也依赖 Android Studio 中的 JDK 配置。这是全局设置,会影响该 Studio 下的所有项目。
将本地个性化配置放在 ~/.gradle/gradle.properties