gpt4 book ai didi

java - 从另一个 Java 应用程序获取日志

转载 作者:行者123 更新时间:2023-11-30 06:07:08 25 4
gpt4 key购买 nike

在一个项目中,我需要从另一个java应用程序执行一个java应用程序。到目前为止,一切都很好。现在我陷入了困境,前者需要从控制台获取后者的日志。

第二个的执行由以下代码片段处理:

ArrayList<String> commands = new ArrayList<>();
commands.add("javaw");
commands.addAll(data.returnPropertiesAsPrefixedStringList());
commands.add("-cp");
commands.add(data.getClasspathJar().toString());
commands.add("[PathToMainClass]");

//data.getArgs for example contains the path to the second java (jnlp) file
commands.addAll(data.getArgs());

ProcessBuilder java = new ProcessBuilder().inheritIO().command(commands);
Process start = java.start();

我现在如何获取“开始”写入控制台的日志?由于我不太清楚我必须寻找什么,所以我没能找到合适的答案。

<小时/>

编辑:

我尝试过这样获取日志,但没有成功。日志根本无法识别。

Process start = java.start();
BufferedReader input = new BufferedReader(new InputStreamReader(start.getInputStream()));
String line;
while ((line = input.readLine()) != null) {
System.out.println("It Did Work: " + line);
}

预先感谢您的帮助。

-我一无所知

最佳答案

Process 有一个 getInputStream() 操作,因此您可以使用输入流读取器来访问此数据。也许这个讨论会对您有所帮助:printing-runtime-exec-outputstream-to-console

关于java - 从另一个 Java 应用程序获取日志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51077996/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com