2014-03-26 194 views
0

我想从Java调用build.xml。要做到这一点,我在Java主方法中提到下面的代码:无法从java main方法调用build.xml

Process process; 
     try { 
       process = new ProcessBuilder("ant","-f" ,"D:/Selenium/Workspace/test_project/build.xml").start(); 
       process.waitFor(); 
       InputStream is = process.getInputStream(); 
       InputStreamReader isr = new InputStreamReader(is); 
       BufferedReader br = new BufferedReader(isr); 
       String line; 
       while ((line = br.readLine()) != null) 
       { 
        System.out.println(line); 
       } 

       } catch (Exception e) 
       { 
        e.printStackTrace(); 
      } 

但我得到的错误:

java.io.IOException: Cannot run program "ant": CreateProcess error=2, The system cannot find the file specified 
    at java.lang.ProcessBuilder.start(Unknown Source) 
    at com.gui.test.TestClass_Base.main(TestClass_Base.java:155) 
Caused by: java.io.IOException: CreateProcess error=2, The system cannot find the file specified 
    at java.lang.ProcessImpl.create(Native Method) 
    at java.lang.ProcessImpl.<init>(Unknown Source) 
    at java.lang.ProcessImpl.start(Unknown Source) 
    ... 2 more 

请帮助。

回答

1

似乎ant不在你的道路上。所以它没有找到它。

或者......它没有找到这个文件:

D:/Selenium/Workspace/test_project/build.xml

我不太清楚。检查两个,看看是否有帮助。

0

Ant在Windows上的入口点是一个批处理脚本,ant.bat。批处理脚本必须在命令解释器中运行,例如cmd.exe

试试这个:

new ProcessBuilder("cmd.exe","/c","ant","-f","D:/Selenium/Workspace/test_project/build.xml")