环境:Ubuntu jdk1.8 eclipse
String []cmdHeader={"/bin/bash","-c","adb"};
Runtime cmd=Runtime.getRuntime();;
Process p=cmd.exec(cmdHeaher);;
BufferedReader br=
new BufferedReader(
new InputStreamReader(p.getInputStream()));
String line=br.readLine();
while(line!=null){
System.out.println(1);
System.out.println(line);
line=br.readLine();
}
br.close();
我省略了一些细节。
在这个cmd中,控制台什么都没显示。为什么?
PS: 当我在bash窗口运行它时,adb是可以的。
答案 0 :(得分:0)
在命令行上,执行which adb
。这将为您提供adb
命令的完整路径,例如/usr/local/bin/adb
。
然后在您的代码中用您从命令行获取的完整路径替换adb
,例如:
String[] cmdHeader = {"/bin/bash","-c","/usr/local/bin/adb"};