외부 jar를 실행할 때 실행한 jar에서 Console에 출력하는 결과를 가져와야 할 때가 있다.
Process 객체가 제공하는 InputStream을 이용해 해당 결과를출력할 수 있다.
Code
public class MyProcessTest {
public static void main(String[] args) {
try
{
Runtime r = Runtime.getRuntime();
Process p = r.exec("java -jar TestJar.jar");
InputStream is = p.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(is));
while (true)
{
String s = br.readLine();
if (s == null)
break;
System.out.println(s);
}
} catch (IOException e) {
e.printStackTrace(System.err);
}
}
}
'Back-End > Java' 카테고리의 다른 글
[Java] lombok의 @Builder 사용시 필수 필드를 입력하게 하는 방법 (0) | 2023.03.14 |
---|---|
[Java] Java Array와 Hash의 데이터 접근/삽입 속도 비교 (0) | 2022.03.06 |
[Java] JUnit5 기본 Annotation (0) | 2022.03.03 |
[Java] Process & Thread 개념 (0) | 2022.02.21 |
[Java] 외부 jar 실행 후 pid(process id) 가져오기(Java 8) (0) | 2022.02.11 |