首页 > 解决方案 > 来自 Java 的 Runtime.getRuntime.exec 139 (SIGSEGV) 用于 C 程序

问题描述

我正在创建一个 Java 程序来运行 C 可执行文件,使用 Runtime.getRuntime.exec(String command) 方法,但有时它返回 exitValue=139(SIGSEGV) 即使当我从终端或 Eclipse 运行 C 程序时它们工作正常。

可能是什么问题呢?

Process pro = Runtime.getRuntime().exec("./cExecutable 10");

System.out.println(command + " exitValue=" + pro.exitValue());

如果它有用,我使用的是 Ubuntu 18.04。

重要的是,我还注意到,当可执行输出超过 600 行时,它最常发生。

事实上我的程序的输出非常大

标签: javaclinuxubuntu

解决方案


推荐阅读