0
내가 cmd를 (명령 행)를 실행하고 자바에서 이런 식으로 내 배치 파일을 실행 (여러 번에 인수 여러 명령) 실행 : 그것은 성공적으로 일하는자바 : cmd를 명령
final String cmd = "cmd /c C: && dir && cd C:\MyApp\Maxi && dir && C:\MayApp\Maxi\deploy.bat";
try {
Process process = Runtime.getRuntime().exec(cmd);
final InputStream in = process.getInputStream();
int ch;
while((ch = in.read()) != -1) {
System.out.print((char)ch);
}
} catch (IOException e) {
System.out.println("IOException on CMD executing statement");
e.printStackTrace();
}
을,하지만 난 수정 배치 파일 및 일부 인수를 추가, 그래서 나는이 시도 그래서 배치 파일에 이름을 통과해야 :
final String cmd = "cmd /c C: && dir && cd C:\MyApp\Maxi && dir && C:\MayApp\Maxi\deploy.bat Name1";
try {
Process process = Runtime.getRuntime().exec(cmd);
final InputStream in = process.getInputStream();
int ch;
while((ch = in.read()) != -1) {
System.out.print((char)ch);
}
} catch (IOException e) {
System.out.println("IOException on CMD executing statement");
e.printStackTrace();
}
하지만 (나는 인자로 'NAME1 "를 보내)는 현재 작동하지 않는 및 명령이 아닙니다 실행. "dir"명령 출력 만받습니다.
아무도 도와 줄 수 있습니까?
참고 : 명령이 CMD에서 성공적으로 실행되었지만 java에서 작동하지 않습니다.
디렉토리 이름이 내 코드에서 변수로 매개 변수화 되었기 때문에 배치 파일을 호출하기 전에 커서를 특정 디렉토리로 이동해야합니다. 이런 식으로 일할 것이라고 생각하십니까? –
먼저 DIR이 필요하지 않습니다. 둘째, 큰 따옴표를 제공하십시오. 예 : && "C : \\ MayApp \\ Maxi \\ deploy.bat" "Name1" –
"DIR"을 사용하여 커서가 움직이고 출력이 있는지 확인합니다. 그리고 고맙습니다. –