首页 > mac 下基于 java 调用 adb 命令遇到问题

mac 下基于 java 调用 adb 命令遇到问题

近期在做一个程序,需要用到 adb 命令,在 mac 下基于 java 执行 adb 命令,遇到无法正常执行的情况。 报错如下:

java.io.IOException: Cannot run program "adb": error=2, No such file or directory
    at java.lang.ProcessBuilder.start(ProcessBuilder.java:1041)
    at java.lang.Runtime.exec(Runtime.java:617)
    at java.lang.Runtime.exec(Runtime.java:450)
    at java.lang.Runtime.exec(Runtime.java:347)
    at main.execAdb(main.java:14)
    at main.main(main.java:40)

PS: adb 的环境变量什么的都是正常配置好的,因为在终端正常执行 adb 相关命令。 现在是希望 java 里面也可以调用,请大侠们支招。谢谢~


在应用中调用adb命令需要获取root权限吧


这个和权限没有什么关系,主要是java虚拟机加载的时候没有adb相关的环境变量,如果使用的是ProcessBuilder去执行adb的命令,建议在设定命令的参数里面使用全路径。比如:

ProcessBuilder pb = new ProcessBuilder("/Users/David/Applications/android-sdk-macosx/platform-tools/adb", "version");

已经试过了,pass

【热门文章】
【热门文章】