Android Studio 3.1.2中Device File Explorer报ADB未找到错误的解决咨询
解决Android Studio 3.1.2中Device File Explorer提示ADB找不到的问题
我之前也碰到过完全一样的情况——升级到Android Studio 3.1.2后,打开Device File Explorer就弹出Error initializing ADB:Android Debug Bridge not found,但在CMD和PowerShell里adb明明能正常运行。结合你给出的错误日志,问题大概率出在Android Support插件(你的版本是10.3.1.2)和AS 3.1.2的兼容性上,给你几个亲测有效的解决办法:
解决方法1:检查并修正SDK路径配置
Android Studio可能没正确识别到adb所在的SDK路径:
- 打开
File > Project Structure > SDK Location - 确认
Android SDK Location指向的是你实际安装SDK的目录,重点检查platform-tools子目录下是否存在adb.exe - 如果路径有误,手动修正后点击
OK,然后重启Android Studio
解决方法2:调整Android Support插件版本
你的Android Support插件版本10.3.1.2和AS 3.1.2兼容性不佳:
- 打开
Settings > Plugins,找到Android Support插件 - 先尝试点击
Update更新到最新的兼容版本;如果更新选项不可用,就卸载当前插件,然后安装与AS 3.1.2匹配的旧版本(比如10.2.x系列,AS 3.1对应的插件版本通常在这个区间) - 安装完成后重启Android Studio
解决方法3:手动指定ADB执行文件路径
强制让AS使用正确的adb文件:
- 打开
Settings > Build, Execution, Deployment > Debugger > Android Debug Bridge - 在
ADB executable选项中,手动选择你SDK目录下platform-tools里的adb.exe - 点击
Apply保存设置,重启AS后再测试Device File Explorer
解决方法4:清除Android Studio缓存
缓存损坏也可能导致这类异常:
- 点击
File > Invalidate Caches / Restart - 在弹出的窗口中选择
Invalidate and Restart,等待AS重启完成后再尝试使用Device File Explorer
附你提供的错误日志:
ADB not found com.intellij.openapi.diagnostic.Logger$EmptyThrowable at com.intellij.openapi.diagnostic.Logger.error(Logger.java:140) at com.android.tools.idea.explorer.adbimpl.AdbDeviceFileSystemService.start(AdbDeviceFileSystemService.java:107) at com.android.tools.idea.explorer.DeviceExplorerController.setup(DeviceExplorerController.java:139) at com.android.tools.idea.explorer.DeviceExplorerToolWindowFactory.createToolWindowContent(DeviceExplorerToolWindowFactory.java:51) at com.intellij.openapi.wm.impl.ToolWindowImpl.ensureContentInitialized(ToolWindowImpl.java:573) at com.intellij.openapi.wm.impl.ToolWindowImpl.getContentManager(ToolWindowImpl.java:407) at com.intellij.openapi.wm.impl.commands.RequestFocusInToolWindowCmd.processRequestFocus(RequestFocusInToolWindowCmd.java:73) at com.intellij.openapi.wm.impl.commands.RequestFocusInToolWindowCmd.lambda$run$0(RequestFocusInToolWindowCmd.java:61) at com.intellij.openapi.util.ExecutionCallback.doWhenExecuted(ExecutionCallback.java:100) at com.intellij.openapi.util.ActionCallback.doWhenDone(ActionCallback.java:111) at com.intellij.openapi.wm.impl.commands.RequestFocusInToolWindowCmd.run(RequestFocusInToolWindowCmd.java:61) at com.intellij.openapi.wm.impl.CommandProcessor.run(CommandProcessor.java:93) at com.intellij.openapi.wm.impl.CommandProcessor.run(CommandProcessor.java:74) at com.intellij.openapi.wm.impl.commands.FinalizableCommand.finish(FinalizableCommand.java:36) at com.intellij.openapi.wm.impl.commands.ApplyWindowInfoCmd.run(ApplyWindowInfoCmd.java:50) at com.intellij.openapi.wm.impl.CommandProcessor.run(CommandProcessor.java:93) at com.intellij.openapi.wm.impl.CommandProcessor.run(CommandProcessor.java:74) at com.intellij.openapi.wm.impl.commands.FinalizableCommand.finish(FinalizableCommand.java:36) at com.intellij.openapi.wm.impl.commands.ApplyWindowInfoCmd.run(ApplyWindowInfoCmd.java:50) at com.intellij.openapi.wm.impl.CommandProcessor.run(CommandProcessor.java:93) at com.intellij.openapi.wm.impl.CommandProcessor.run(CommandProcessor.java:74) at com.intellij.openapi.wm.impl.commands.FinalizableCommand.finish(FinalizableCommand.java:36) at com.intellij.openapi.wm.impl.ToolWindowsPane$AddDockedComponentCmd.run(ToolWindowsPane.java:768) at com.intellij.openapi.wm.impl.CommandProcessor.run(CommandProcessor.java:93) at com.intellij.openapi.wm.impl.CommandProcessor.run(CommandProcessor.java:74) at com.intellij.openapi.wm.impl.commands.FinalizableCommand.finish(FinalizableCommand.java:36) at com.intellij.openapi.wm.impl.commands.ApplyWindowInfoCmd.run(ApplyWindowInfoCmd.java:50) at com.intellij.openapi.wm.impl.CommandProcessor.run(CommandProcessor.java:93) at com.intellij.openapi.wm.impl.CommandProcessor.run(CommandProcessor.java:74) at com.intellij.openapi.wm.impl.commands.FinalizableCommand.finish(FinalizableCommand.java:36) at com.intellij.openapi.wm.impl.commands.ApplyWindowInfoCmd.run(ApplyWindowInfoCmd.java:50) at com.intellij.openapi.wm.impl.CommandProcessor.run(CommandProcessor.java:93) at com.intellij.openapi.wm.impl.CommandProcessor.run(CommandProcessor.java:74) at com.intellij.openapi.wm.impl.commands.FinalizableCommand.finish(FinalizableCommand.java:36) at com.intellij.openapi.wm.impl.commands.ApplyWindowInfoCmd.run(ApplyWindowInfoCmd.java:50) at com.intellij.openapi.wm.impl.CommandProcessor.run(CommandProcessor.java:93) at com.intellij.openapi.wm.impl.CommandProcessor.run(CommandProcessor.java:74) at com.intellij.openapi.wm.impl.commands.FinalizableCommand.finish(FinalizableCommand.java:36) at com.intellij.openapi.wm.impl.commands.ApplyWindowInfoCmd.run(ApplyWindowInfoCmd.java:50) at com.intellij.openapi.wm.impl.CommandProcessor.run(CommandProcessor.java:93) at com.intellij.openapi.wm.impl.CommandProcessor.run(CommandProcessor.java:74) at com.intellij.openapi.wm.impl.commands.FinalizableCommand.finish(FinalizableCommand.java:36) at com.intellij.openapi.wm.impl.commands.ApplyWindowInfoCmd.run(ApplyWindowInfoCmd.java:50) at com.intellij.openapi.wm.impl.CommandProcessor.run(CommandProcessor.java:93) at com.intellij.openapi.wm.impl.CommandProcessor.run(CommandProcessor.java:74) at com.intellij.openapi.wm.impl.commands.FinalizableCommand.finish(FinalizableComma
内容的提问来源于stack exchange,提问作者L0ngx1ng




