启动uiautomatorviewer报错,设置ANDROID_SWT后问题未解决求助
解决uiautomatorviewer启动时ANDROID_SWT路径设置无效问题
问题描述
执行export ANDROID_SWT=/Users/stefanjosimovski/Library/Android/sdk/tools/lib/x86_64设置环境变量后,启动uiautomatorviewer仍报错,终端输出如下:
Last login: Tue Aug 23 14:27:21 on ttys001 stefanjosimovski@StefanJosimovskis-MacBook-Pro ~ % /Users/stefanjosimovski/Library/Android/sdk/tools/bin/uiautomatorviewer ; exit; SWT folder '/Users/stefanjosimovski/Library/Android/sdk/tools/lib/aarch64' does not exist. Please export ANDROID_SWT to point to the folder containing swt.jar for your platform. Saving session... ...copying shared history... ...saving history...truncating history files... ...completed. [Process completed]
原因及解决步骤
1. 临时环境变量仅当前会话生效
你执行的export命令只在当前终端会话有效,关闭终端后变量会丢失。要让它永久生效:
- 如果你用的是zsh,编辑
~/.zshrc文件,添加一行:export ANDROID_SWT=/Users/stefanjosimovski/Library/Android/sdk/tools/lib/x86_64 - 保存后执行
source ~/.zshrc使设置立即生效,再重新启动uiautomatorviewer。
2. 确认目标路径下存在swt.jar
先检查你指定的x86_64文件夹是否存在且包含swt.jar:
ls /Users/stefanjosimovski/Library/Android/sdk/tools/lib/x86_64
如果输出为空或找不到该文件夹,说明路径错误,需要找到对应你系统架构的SWT文件夹(比如确认SDK tools目录下的lib文件夹里有哪些架构子目录)。
3. M系列芯片Mac需适配Rosetta(若适用)
如果你的Mac是M1/M2等ARM架构芯片,uiautomatorviewer本身是x86架构程序,默认会尝试找aarch64的SWT库。可以通过以下方式解决:
- 右键终端图标→「显示简介」→勾选「使用Rosetta打开」,重启终端后再设置环境变量并启动uiautomatorviewer。
内容的提问来源于stack exchange,提问作者Stefan Josimovski
相关产品推荐
相关产品推荐

