我想优先执行一个简单的命令,该命令在shell中运行但不能在Java中运行。 这是我要执行的命令,它工作得很好:从Java启动OpenOffice服务(soffice)的问题(命令在命令行中运行,但不是从Java运行)
soffice -headless "-accept=socket,host=localhost,port=8100;urp;"
这是我从Java试图运行此命令excecuting代码:
String[] commands = new String[] {"soffice","-headless","\"-accept=socket,host=localhost,port=8100;urp;\""};
Process process = Runtime.getRuntime().exec(commands)
int code = process.waitFor();
if(code == 0)
System.out.println("Commands executed successfully");
当我运行这个程序,我得到“命令执行成功”。 但是程序结束时该进程没有运行。 JVM在运行后可能会杀死程序吗?
为什么不能正常工作?