[AndroidDev] uiautomatorviewer.bat無法執行

錯誤訊息:
閃一下就消失

原因與解法:
有錯誤就自己關掉了,直接從cmd啟動來看錯誤訊息吧。



錯誤訊息:
C:\AndroidSDK\tools\bin>uiautomatorviewer.bat
SWT folder '..\lib\location of your Java installation.' does not exist.
Please set ANDROID_SWT to point to the folder containing swt.jar for your platform.

原因與解法:
找不到swt.jar。其實有包在SDK tool裡面,不知道為什麼偶爾會找不到。
幫他指定一下:設定環境變數ANDROID_SWT到"C:\AndroidSDK\tools\lib\x86_64",依照你的平台選版本。



錯誤訊息:
C:\AndroidSDK\tools\bin>uiautomatorviewer.bat
Exception in thread "main" java.lang.UnsupportedClassVersionError: com/android/uiautomator/UiAutomatorViewer : Unsupported major.minor version 52.0

原因與解法:
找不到JDK/JRE,或是有版本問題。
檢查環境變數JAVA_HOME指到的地方有沒有問題,例如我的是C:\Program Files\OpenJDK\1.8(注意:沒有\bin)



錯誤訊息:
C:\AndroidSDK\tools\bin>uiautomatorviewer.bat
-Djava.ext.dirs=C:\AndroidSDK\tools\lib\x86;..\lib is not supported.  Use -classpath instead.
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.

原因與解法:
在另外一個環境用「OpenJDK JDK 18.0.1.1 General-Availability Release」踩到的,改成用「java-1.8.0-openjdk-1.8.0.322-1.b06.ojdkbuild.windows.x86_64」就好了,我也不知道為什麼…



======================================

我自己是使用OpenJDK 1.8,沒有用AndroidStudio附的,可以參考下面兩位先賢的文章:
我的dotnet點點滴滴 - 在Windows上安裝OpenJDK
https://jakingfox.blogspot.com/2019/01/windowsopenjdk.html 

黑暗執行緒 - Windows Open JDK 替代方案研究
https://blog.darkthread.net/blog/openjdk-in-windows/

ojdkbuild(OpenJDK官方沒有編譯Windows版,這個是社群編譯版)
https://github.com/ojdkbuild/ojdkbuild

心得:
怎麼搜尋JAVA環境問題,都是.NET開發者的文章?


留言