今天在运行uiautomatorviewer时,遇到了一个报错:
-Djava.ext.dirs=/usr/local/android-sdk-linux/tools/lib/x86_64:/usr/local/android-sdk-linux/tools/lib is not supported. Use -classpath instead.
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.
究其原因是java版本的问题,java9不支持使用变量-Djava.ext.dirs指定路径。
具体方法如下:
方法1:安装jdk1.8版本
1、进入 Oracle 网站 下载合适的 JDK1.8 版本
官网下载可能不太方便,我上传到了百度网盘:百度网盘链接jdk-8u151-linux-x64.tar.gz
2、创建目录
在/usr/目录下创建java目录,
mkdir /usr/local/java
cd /usr/local/java
把文件 jdk-8u151-linux-x64.tar.gz 放在/usr/local/java/目录下。
3. 解压 JDK
tar -zxvf jdk-8u151-linux-x64.tar.gz
4. 设置环境变量
修改 vi /etc/profile
在 profile 文件中添加如下内容并保存:
set java environment
JAVA_HOME=/usr/local/java/jdk1.8.0_151
JRE_HOME=/usr/local/java/jdk1.8.0_151/jre
CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME JRE_HOME CLASS_PATH PATH
方法2:修改命令(不推荐)
方法2的思路是修改uiautomatorviewer中的命令行,不推荐这样做
第一步:
找到uiautomatorviewer所在目录:android-sdk-linux/tools/bin
(用while uiautomatorviewer
也可以找到路径),并且进入这个目录。
第二步:
用vim
打开uiautomatorviewer
第三步:
修改最后一行代码,将-Djava.ext.dirs
替换成--class-path
修改前后对比图: