Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将命令从终端发送到Java swing应用程序_Java_Terminal_Process_Signals - Fatal编程技术网

将命令从终端发送到Java swing应用程序

将命令从终端发送到Java swing应用程序,java,terminal,process,signals,Java,Terminal,Process,Signals,我有一个可以工作的java应用程序,现在我想扩展它以通过ssh进行控制。假设我有一个增加计数器的摆动按钮。我希望能够在那台计算机上使用ssh,说些什么$:myapp increase,并执行按钮的操作侦听器 也许我用错了关键字,但我找不到解决办法。我可以想到的“类似”解决方案是使用信号,但我甚至不确定它们是否可以像我从C中习惯的那样使用,以及是否可以在不知道实际进程ID的情况下使用 任何能让我开始学习的材料都是受欢迎的。信号很难从java中读取,因为操作系统之间在如何做这些事情上有很大的不同(有

我有一个可以工作的java应用程序,现在我想扩展它以通过ssh进行控制。假设我有一个增加计数器的摆动按钮。我希望能够在那台计算机上使用ssh,说些什么
$:myapp increase
,并执行按钮的操作侦听器

也许我用错了关键字,但我找不到解决办法。我可以想到的“类似”解决方案是使用信号,但我甚至不确定它们是否可以像我从C中习惯的那样使用,以及是否可以在不知道实际进程ID的情况下使用


任何能让我开始学习的材料都是受欢迎的。

信号很难从java中读取,因为操作系统之间在如何做这些事情上有很大的不同(有些甚至没有这个概念),java被设计为公开任何可以在java运行的所有操作系统上通用的东西,不暴露任何可能不存在的东西

通常的方法是通过TCP/IP(例如,
java.net.Socket
)或HTTP(例如,
jetty
或类似的方式)


请注意,webapps可以轻松地远程访问,并且可以相当轻松地编写脚本。你也可以考虑建立一个命令行/基于终端的应用程序,例如你可以把它推到一个终端会话守护者/永久SSH协议中。或者将基于web套接字的tcp/ip服务器添加到应用程序以与之通信?您还可以将任意内容发送到的stdin通道(在linux上),您需要在swing应用程序中使用一个线程轮询stdin。也许您可以使用轻量级消息代理发送命令。它可能比编写TCP/IP或HTTP服务要重一些。但它也可能更容易实现。