You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Arch Linux下Flutter安装遇sdkmanager启动失败问题求助

解决Arch Linux上Flutter安装时Android许可证验证失败问题

问题背景

在Arch Linux上通过Android Studio安装Flutter后,执行flutter doctor提示Android许可证状态未知;运行flutter doctor --android-licenses触发java.lang.module.FindException: Module java.se.ee not found错误,且sdkmanager在Java 8/17环境下均无法正常运行。

解决方案

1. 配置兼容的Java环境

Android Studio Giraffe(2022.3)推荐使用Java 17,先确保已安装对应版本:

sudo pacman -S java-17-openjdk

设置JAVA_HOME环境变量(路径根据实际安装情况调整,通常为/usr/lib/jvm/java-17-openjdk):

export JAVA_HOME=/usr/lib/jvm/java-17-openjdk
export PATH=$JAVA_HOME/bin:$PATH

2. 修改sdkmanager启动参数适配Java 17

Java 9及以上版本已移除java.se.ee模块,需调整sdkmanager的启动参数:

  1. 打开sdkmanager脚本文件:
nano /home/ryann62/Android/Sdk/cmdline-tools/latest/bin/sdkmanager
  1. 找到包含JAVA_OPTS的行,将原有的--add-modules java.se.ee替换为拆分后的兼容模块:
JAVA_OPTS='-XX:+IgnoreUnrecognizedVMOptions --add-modules java.xml.bind,java.activation,java.se.legacy'
  1. 保存退出后,直接运行sdkmanager接受许可证:
cd /home/ryann62/Android/Sdk/cmdline-tools/latest/bin
./sdkmanager --licenses

按照提示输入y确认接受所有许可证。

3. 验证Flutter环境

完成许可证操作后,重新执行:

flutter doctor

此时Android toolchain的许可证状态应恢复正常。

4. 解决Chrome缺失问题

Arch Linux默认无google-chrome,可安装Chromium并配置环境变量:

sudo pacman -S chromium
export CHROME_EXECUTABLE=/usr/bin/chromium

若需永久生效,将上述export命令添加到~/.bashrc或~/.zshrc文件中。

内容的提问来源于stack exchange,提问作者Niall Ryan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.13 02:55:18