从 Java 编译 c++ 文件

Compiling c++ file from java

本文关键字:文件 c++ 编译 Java      更新时间:2023-10-16

我的问题与在java中编译c ++文件有关。我已经尝试执行 c#,这很好。此提取代码用于编译 c#

ProcessBuilder launcher = new ProcessBuilder("gmcs","HelloWorld.cs");`

但是,我的 c++ 代码

ProcessBuilder launcher =new ProcessBuilder("g++", "HelloWorld.cpp -o HelloWorld");

返回错误 = 2,没有这样的文件或目录指示我使用的
路径 launcher.directory(new File(path)) 在这两种情况下

您需要单独提供参数:

ProcessBuilder launcher =
    new ProcessBuilder("g++", "HelloWorld.cpp", "-o", "HelloWorld");

否则,整个参数字符串将作为一个参数传递给g++可执行文件,g++尝试查找名为 HelloWorld.cpp -o HelloWorld 的文件(像在 Linux 终端上使用转义空格一样)。

有关用法的详细信息,请参阅文档。