我需要编写一个java程序,在执行时将命令推送到终端
我尝试使用runtime.exec();但对我来说效果不好
我想要的是“/ home / raj / Desktop / java -jar test.jar”将在终端中执行
任何人都可以帮我解决。
答案 0 :(得分:7)
如果你想真正启动一个终端窗口(而不仅仅是执行java进程),你需要启动xterm(或类似的东西)并告诉xterm运行java例如
String command= "/usr/bin/xterm -e /home/raj/Desktop/java -jar test.jar";
Runtime rt = Runtime.getRuntime();
Process pr = rt.exec(command);
答案 1 :(得分:1)
请参阅以下示例.with java程序的参数列表。
Process proc = null;
try {
String cmd[] = {"gnome-terminal", "-x", "bash", "-c", "ls; echo '<enter>'; read" };
proc = Runtime.getRuntime().exec(cmd, null, wd);
} catch (IOException e) {
e.printStackTrace();
}
答案 2 :(得分:1)
您可以使用jar文件的完整路径作为"java"
String command= "java -jar /home/raj/Desktop/test.jar";
Runtime rt = Runtime.getRuntime();
Process pr = rt.exec(command);