2016-07-29 3 views
0

Java 프로그램에서 Ant를 실행하려고합니다. 이 작품 :절대 경로가없는 Java에서 명령 줄 프로그램을 실행하십시오.

// Compile project 
ProcessBuilder pb = 
     new ProcessBuilder("/usr/local/Cellar/ant/1.9.6/libexec/bin/ant", "-f", pathToProject + "build.xml"); 
Process p = pb.start(); 
p.waitFor(); 

그러나,이 프로그램은 내 자신이 아닌 다른 시스템에 사용됩니다, 그래서 오히려이 같은 ProcessBuilder를 인스턴스화하는 것 : 내 맥 터미널에서

new ProcessBuilder("ant", "-f", pathToProject + "build.xml"); 

ant -f build.xml하지만 작품을, 내 프로그램 출력에 위의 코드를 넣으십시오. java.io.IOException: Cannot run program "ant": error=2, No such file or directory.

Ant가있는 ProcessBuilder를 프로그래밍 방식으로 표시하려면 어떻게해야합니까? 이 프로그램은 OS X 및 Ubuntu에서 실행됩니다.

참고 :이 질문은 개미와 관련이 없습니다. ProcessBuilder를 사용하여 다른 명령 줄 도구도 호출해야합니다.

답변

0

속성 파일을 통해 사용자 정의가 가능하도록 Ant의 절대 경로를 주입하십시오.이 방법은 등록 정보 파일에 해당 경로를 제공하여 여러 환경에서 실행할 수 있습니다.