【发布时间】:2015-01-28 12:37:29
【问题描述】:
我对 linux 中的 c++ 编程非常陌生,我想从 c++ 执行 java 程序。当我这样做时:
int main() {
system("java -jar /home/user/test/test.jar argument");
cout << "The end" << endl;
return 0;
}
我的主进程一直等到 java 完成,然后继续。有什么方法可以在不停止主进程的情况下“触发”java?提前谢谢!
【问题讨论】:
-
使用 JNI 在你的进程中创建一个 JVM。
-
您也许可以通过命令行在后台运行它
system("java -jar /home/user/test/test.jar argument > /dev/null 2>&1 &");我不知道这是否可行,但可能值得一试。 -
Tnx,我试过了,但是它没有运行java,它只是跳转到“结束”行
-
@KerrekSB,我没提过,我是在ARM7 linux上做的,能力有限,不知道能不能试试你的方法,谢谢你的努力:)
-
分叉一个新进程不是一种选择,对吧?