我有一个java应用程序,它将自己启动另一个Java程序。我是通过使用
来做到的Runtime.getRuntime().exec("/usr/lib/jvm/java-7-oracle/jre/bin/java -Dfile.encoding=UTF-8 -cp /home/AL/Dropbox/Distributed\ Systems/Project/distributedIM/DS/lib/derbyclient.jar:/home/AT/Dropbox/Distributed\ Systems/Project/distributedIM/DS/lib/gson-2.2.4.jar:/home/AT/Dropbox/Distributed\ Systems/Project/distributedIM/DS/build/classes com.myim.client.main.StartClient");
它适用于mac os 10.9,但是当我尝试使用Linux Mint时,没有任何反应......
我真的不明白为什么,有人能帮助我吗?
非常感谢你。
答案 0 :(得分:1)
尝试类似
的内容String[] cmd = new String[] {"/bin/bash", "-c", "ps"}
Runtime.getRuntime().exec(cmd);
在Linux中。将ps
替换为您尝试在终端中执行的命令。您甚至可以在命令中使用管道和过滤器:"ps -fe | grep bash"
答案 1 :(得分:0)
据我所知,commandline
不是现有的Unix程序。如果您用commandline
替换了问题中的真实命令,则问题很可能是您尝试调用的应用程序在Linux中不存在。