2014-06-13 2 views
0

내 코드는 다음과제공 SH 파일

final String[] cmdArray = { 
"sh", "./invoke_payment_files_generator.sh", 
String.valueOf(paymentBatchId) 
}; 


final ProcessBuilder processBuilder = new ProcessBuilder(cmdArray); 

processBuilder.redirectErrorStream(true); 

처럼 ProcessBuilder까지 할 수 있지만 오류가있는 파일을 읽지 못했습니다 ProcessBuilder에 sh 파일을 입력 매개 변수로 제공하십시오.

+1

sh 파일이있는 디렉토리에'processbuilder.directory (String)'로 디렉토리를 설정하십시오. – user432

답변

0

sh 대신 /bin/sh을 사용할 수 있습니다.

@ user432 이미 언급했듯이, 쉘 스크립트가 Java 응용 프로그램의 작업 디렉토리에없는 경우 directory(String) 메소드를 사용하여 명시 적으로 ProcessBuilder 메소드를 설정하고자 할 수 있습니다. 또는 ./이 아닌 셸 스크립트의 절대 경로를 지정할 수도 있습니다.