将数据从Python程序发送到Java程序

3
我有一个Python程序status.py,会将一些状态更新(字符串)打印到控制台。然而,我需要编写一个JavaFX程序Display.java,来启动Python程序并将Python程序的状态更新打印到TextArea中。
为了实现这个目标,我修改了status.py,让它将状态更新写入文本文件,然后让Java程序读取文本文件并显示在TextArea中。
虽然文本文件方法可行,但我感觉有更好的交互方式。我考虑让Python程序通过socket发送状态更新,然后让Java程序使用ServerSocket监听socket。
使用像通过socket通信这样的网络方法是实现status.pyDisplay.java之间通信的最佳方式吗?如果不是,那么实现这种进程间通信的最佳方法是什么?

1
套接字是一种完全合理的进程间通信方式,特别是在跨语言方面。 - Amber
1
请查看以下链接:https://dev59.com/4HPYa4cB1Zd3GeqPlaWu - Amit Bhati
谢谢。我可能会选择套接字。我有一些特殊的Python库,我不确定它们在Jython中如何工作。我从未使用过Jython,但将来肯定会更加仔细地研究它。 - jshapy8
1个回答

1

将信息从Python进程传递到Java进程有两个选项:

  1. Java流行的网络库可以通过套接字轻松读取数据。由于在Python中可以轻松打开套接字,因此实现套接字通信将是最简单的解决方案。
  2. 如果您有Jython的经验,则可以通过将Python代码包含在Java代码中来消除执行进程间通信的需要。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接