Windows11 WSL Ubuntu子系统中React Native无法识别Android Studio求助
WSL环境React Native无法检测Windows端Android Studio/SDK解决方案
问题根因
你提供的react-native doctor源码明确显示:Android Studio的检测逻辑仅对win32平台做了Windows本地路径适配,你在WSL的Ubuntu环境中运行命令时,运行环境被识别为linux,检测逻辑只会查找Linux系统本地安装的Android Studio,自然找不到安装在Windows宿主的AS和SDK,这是你之前调整PATH、创建软链接都不生效的核心原因。
可行解决方案
方案1:配置WSL全局环境变量指向Windows SDK
- 先确认Windows端Android SDK的安装路径,默认路径为
C:\Users\你的Windows用户名\AppData\Local\Android\Sdk,对应WSL内的挂载路径为/mnt/c/Users/你的Windows用户名/AppData/Local/Android/Sdk,需替换为自己的实际路径 - 编辑WSL内的shell配置文件(用bash就改
~/.bashrc,用zsh就改~/.zshrc),在末尾添加如下配置:
export ANDROID_HOME=/mnt/c/Users/你的Windows用户名/AppData/Local/Android/Sdk export PATH=$PATH:$ANDROID_HOME/emulator export PATH=$PATH:$ANDROID_HOME/platform-tools export PATH=$PATH:$ANDROID_HOME/tools export PATH=$PATH:$ANDROID_HOME/tools/bin
- 保存后执行
source ~/.bashrc(对应你使用的shell配置文件)使配置生效
方案2:项目级配置指定SDK路径
- 进入React Native项目根目录,创建名为
local.properties的文件 - 写入如下内容,路径替换为WSL内对应的SDK路径:
sdk.dir = /mnt/c/Users/你的Windows用户名/AppData/Local/Android/Sdk
- 该配置优先级高于系统检测逻辑,无需doctor检测通过即可正常构建Android应用
方案3:直接忽略doctor检测报错
react-native doctor的Android Studio检测仅做环境校验用,只要你配置完SDK路径后,执行adb devices能正常识别到已连接的真机/Windows端启动的模拟器,就可以正常构建运行RN应用,doctor的报错可以直接忽略。
注意事项
如果构建时出现权限报错,执行chmod -R 755 $ANDROID_HOME给SDK目录添加执行权限即可解决WSL访问Windows文件的权限问题。
内容的提问来源于stack exchange,提问作者Alex
相关产品推荐
相关产品推荐

