mac下uiautomatorviewer打开后报错



如图什么都不显示,右边也不显示定位的元素

1 个赞

Java版本的问题吧,你的什么版本,1.8.0.51以下貌似都是正常的

老师,我这个是太高了吗?

是的,降低到201之前的。比如我的192,如果你的192还不行,继续降级到51一下就可以了。

uiautomatorviewer其实是一个java的启动脚本,比如mac上用这个命令就可以看到真正启动的命令。

bash -x /Users/seveniruby/Library/Android/sdk//tools/bin/uiautomatorviewer

真正的执行命令其实就是一个jar包启动命令

/Library/Java/JavaVirtualMachines/jdk1.8.0_192.jdk/Contents/Home/bin/java \
  -Xmx1600M -XstartOnFirstThread \
  -Djava.ext.dirs=/Users/seveniruby/Library/Android/sdk/tools/lib/x86_64:/Users/seveniruby/Library/Android/sdk/tools/lib \
  -Dcom.android.uiautomator.bindir=/Users/seveniruby/Library/Android/sdk/tools \
  -jar /Users/seveniruby/Library/Android/sdk/tools/lib/uiautomatorviewer-26.0.0-dev.jar

为了保证本地可以正确运行uiautomatorviewer,我基本上是常备几个jdk

seveniruby:~ seveniruby$ ls /Library/Java/JavaVirtualMachines/
adoptopenjdk-8.jdk/ jdk-11.0.2.jdk/     jdk1.8.0_51.jdk/
jdk-10.0.2.jdk/     jdk1.8.0_192.jdk/   openjdk-11.jdk/

这个地方是可以下载到之前的一些老的JDK

2 个赞

好的,谢谢老师

我昨天也遇到这个问题了,这个帖子上有讲灵活配置jdk ,希望方便后来人吧

#设置jdk15
export JAVA_15_HOME=/Library/Java/JavaVirtualMachines/jdk-15.jdk/Contents/Home
#设置jdk 8
export JAVA_8_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home
#默认JDK8
export JAVA_HOME=$JAVA_8_HOME
#alias命令动态切换JDK版本
alias jdk8=“export JAVA_HOME=$JAVA_8_HOME”
alias jdk15=“export JAVA_HOME=$JAVA_15_HOME”

我的161 也不行呢,准备添加个51 试试

➜  sdk  ls /Library/Java/JavaVirtualMachines/
jdk1.8.0_161.jdk zulu-17.jdk