可能重复:
Communication between two separate Java desktop applications
我在同一个客户端上运行了两个java程序,我怎么能这样做,第一个程序将一些参数或日期传递给第二个程序?
答案 0 :(得分:2)
这取决于您希望如何传达这两个程序:
如果只需要进程间信号量,请在/ tmp中的某处创建一个文件并将其锁定。
如果只需要进程间同步消息传递(远程过程调用),则RMI应该是最简单的。
如果需要异步进程间消息传递,JMS应该是最简单的。
如果需要进程间共享内存,请使用映射文件。
如果您需要以上所有内容,Terracotta(http://www.terracotta.org/)是最简单的方法:在相同甚至不同计算机上的不同JVM上的Java程序看到彼此就好像它们一样在一台机器上的一个JVM内执行。将一个程序拆分成几个甚至不需要任何代码更改 - 这足以编写XML配置文件。
答案 1 :(得分:0)
你需要一个听众和一个客户。
您可以使用套接字或RMI或您选择的任何其他协议来执行此操作。
答案 2 :(得分:0)
根据您的要求,Java Messaging Service,Jetlang或JavaSpaces可能是合适的。
答案 3 :(得分:0)
假设您的意思是这些程序在不同的JVM中运行,您需要使用Java Messaging Service,JavaSpaces或上帝禁止的CORBA。与其他JMS一样,JMS需要一个JMS服务器,例如activemq,但其他方面并不是那么可怕而且非常强大。如果你想使用java.util.concurrent或JetLang(我认为),你必须让两个程序在同一个JVM下运行。你能从另一个程序启动一个程序,以便它们共享相同的JVM内存空间吗?