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 エラー = 2、システムは java.lang.ProcessImpl の java.lang.ProcessImpl.create(Native Method) で指定されたファイルを見つけられません。(不明なソース) は java.lang.ProcessImpl にあります。 .start(Unknown Source) ... さらに 5 個のコマンドの実行に失敗しました

javaから実行しているときにコマンドとして「android」が見つからないようです。この問題を解決するにはどうすればよいですか?

4

1 に答える 1