【问题标题】:View the console output of a running Java program, from another Java app从另一个 Java 应用程序查看正在运行的 Java 程序的控制台输出
【发布时间】:2017-03-13 12:44:24
【问题描述】:

我有一个用 Java 编写的程序,您想将其配置为操作系统服务。程序读取socket接收到的数据,socket处理并存储。它还会记录错误并最终在控制台中一直打印信息流以观察其操作。

将其设置为服务后,出现了需求。

如果应用程序在后台,因此控制台未打开,我如何在控制台中查看打印活动?

有没有办法查看该应用程序的控制台输出?

我想到是否可以创建另一个 Java 应用程序来读取和打印所创建服务的控制台输出。这样能解决问题吗?

【问题讨论】:

  • 这实际上是一个操作系统问题而不是 Java 问题。通常,只有启动您的应用程序的进程才能读取其标准输出。对于服务,希望启动您的服务的操作系统功能也使用您可能挂钩的某种日志记录。否则,您将不得不使用其他形式的 IPC(例如 unix 上的命名管道)
  • 如何使用日志框架(log4jlogback 等,如果你想切换日志实现,可以使用slf4j)而不是写到stdout

标签: java service console


【解决方案1】:

非常感谢您的cmets,经过深入研究后,根据您的建议,我开发了一个通过Sockets的IPC通信系统,其中,一个swing应用程序连接到服务并每2秒请求一次所需的信息以及应用中的示例

【讨论】:

  • 虽然很高兴您发布自己问题的答案,但此答案对于将来遇到类似问题的访问者没有用处。你能进一步澄清一下吗?
猜你喜欢
  • 1970-01-01
  • 2013-02-11
  • 2012-08-12
  • 1970-01-01
  • 2013-02-19
  • 2010-10-03
  • 1970-01-01
  • 2012-11-12
  • 1970-01-01
相关资源
最近更新 更多