从JAVA调用C++可执行文件

Calling C++ executable from JAVA

本文关键字:可执行文件 C++ 调用 JAVA      更新时间:2023-10-16

我有用C++编写的扑克机器人。我想和另一个扑克学院的经纪人竞争。为了做到这一点,JAVA中有一个API,即"meerkat-API"。

我不知道如何从javaapi调用我的c++可执行文件,如何与java包中的独立c++可执行程序进行通信?

要开始,请参阅:

  • java.lang.Runtime.exec()家族
  • java.lang.ProcessBuilder

或者,如果您需要在较低的lvl上与C++应用程序集成,这意味着不仅仅是"运行程序并处理结果"。你可以使用JNI或更简单的变体JNA,但我必须承认这很痛苦。

在阅读/关注@hmjd之后,您可以使用Apache Commons Exec库中的DefaultExecutor来执行命令,但它在内部使用java.lang.Runtimejava.lang.Process

我建议您在运行时使用这个库,因为Apache命令执行API更复杂,并且提供了比Java运行时更多的功能。它还处理退出值。