我有一个 JAVA 应用程序,它启动(使用 ProcessBuilder)另一个 JAVA 应用程序,如下所示:
String val = "something";
ProcessBuilder processBuilder = new ProcessBuilder("java", "-classpath", dir, appName, val);
Process p = processBuilder.start();
现在,这工作正常,appName 使用参数 val 启动,它运行并工作...很棒...问题是没有控制台窗口出现...appName 做了很多输出到控制台,我们需要看到它...我如何使用控制台启动该过程?
我正在尝试诸如(“CMD.exe”,“java”,“-classpath”,dir,appName,val)等之类的东西......但我无法得到正确的......
另外,我无法重定向流,我的程序实际上可以启动 5-10 个这样的 appName,每个应用程序都应该有自己的控制台窗口,显示自己的信息。
任何帮助将非常感激。
谢谢,
控制台窗口通常不是最可靠的日志记录形式。它们仅存储一定量的信息(缓冲区),并且跨平台的行为可能有所不同。
我强烈建议使用类似的方法记录到文件log4j http://logging.apache.org/log4j/如果您需要实时查看它,请使用尾状程序 http://tailforwin32.sourceforge.net/(我看到你正在使用Windows)。
除此之外,鉴于您希望窗口始终可见并为每个日志启动尾部程序可能很烦人,我会在 java swing 中编写自己的日志窗口。
基本思想是不要过多依赖操作系统。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)