【问题标题】:CLI communication with already running Java application?与已经运行的 Java 应用程序的 CLI 通信?
【发布时间】:2012-03-25 13:44:06
【问题描述】:

启动应用程序时,可以将参数传递给应用程序。但是如何将参数传递给已经在运行的 (Java) 应用程序/如何在我的 Java 程序中处理这种情况?

换句话说:如何从 .bat 文件/CLI 进程与已经运行的 Java 应用程序进行通信?请注意,这两个东西(CLI 的东西和 Java 应用程序)都是我自己的应用程序,我可以修改源代码 - 我只是不知道如何;-)

【问题讨论】:

  • “如何将参数传递给已经运行的 (Java) 应用程序” 一种方法是创建一个带有输入区域和其他控件的 GUI。
  • 不幸的是,我需要批量集成,在这种情况下,GUI 是一件坏事。

标签: java command-line ipc


【解决方案1】:

Apache thrift 的帮助下,我更喜欢将套接字用于跨平台 IPC。您可以从 CLI 实用程序实现 RPC 方法使用。

【讨论】:

  • 谢谢,但是是否可以使用新参数再次调用正在运行的 ajva 应用程序,而不是再次运行应用程序,只需对新的命令留置权参数做出反应?
  • 当然可以,通过结合实用函数到你的应用程序,例如main方法检查是否已经运行实例,连接到它预先定义CLI监听套接字,发送到命令处理.
  • 感谢您对 Apache Thrift 的参考。这对我来说可能非常有用,并且可以简化我的很多工作。 +1。
  • 想一想,感觉需要某事。外部像插座。我最终使用了 FileSystem,在 Java 7 中有文件系统观察者,只是 echo sth。从 cli 到文本文件并使用您的 java 应用程序对其进行解析。很容易。更简单:监视文件夹,为一个命令/传递参数创建一个文件等。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-03-16
  • 2020-06-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-01-19
  • 1970-01-01
相关资源
最近更新 更多