0

我正在尝试在 java 中执行以下命令。

android update project -p d:\code\android\projects\Testproject2

它在命令行中执行良好,并且完全符合预期。

但是,当我想从 java 程序执行这个命令时。它给出了错误。

我的java程序代码。

String cmd = "android update project -p d://code//android//projects//Testproject2";

    try {
        Process p = Runtime.getRuntime().exec(cmd);
        BufferedReader b = new BufferedReader(new InputStreamReader(p.getInputStream()));

        while(true){
            String line = b.readLine();
            if(line == null)break;
            System.out.println(line);
        }


    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
        System.out.println("command execution failed");
    }

以及我在控制台中看到的错误:

java.io.IOException: Cannot run program "android": CreateProcess error=2, The system cannot find the file specified
at java.lang.ProcessBuilder.start(Unknown Source)
at java.lang.Runtime.exec(Unknown Source)
at java.lang.Runtime.exec(Unknown Source)
at java.lang.Runtime.exec(Unknown Source)
at com.test.commandline.Main.main(Main.java:24)

原因:java.io.IOException: CreateProcess error=2, 系统找不到在 java.lang.ProcessImpl.(Unknown Source) at java.lang.ProcessImpl.(Unknown Source) at java.lang.ProcessImpl.create(Native Method) at java.lang.ProcessImpl 指定的文件.start(Unknown Source) ... 5 个以上命令执行失败

从 java 执行时,它似乎找不到“android”作为命令。如何解决这个问题?

4

1 回答 1

1

尝试将其添加到您的 cmd 命令并在 Android 之前,使其看起来像这样:

 String cmd = "cmd /c start  android update project -p d://code//android//projects//Testproject2";
于 2013-08-25T11:10:39.807 回答