Je veux exécuter un programme java (jar) dans un autre terminal sous Linux. Voici mon code:Exécution exec sous Linux
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.OutputStreamWriter;
public class Launcher
{
public static void main(String[] args)
{
try
{
Thread.sleep(6000);
Process p;
if(System.getProperty("os.name").toLowerCase().contains("win"))
{
BufferedWriter bw;
p = Runtime.getRuntime().exec("cmd.exe /c start java -Xms512M -Xmx512M -jar craftbukkit.jar");
bw = new BufferedWriter(new OutputStreamWriter(p.getOutputStream()));
bw.write(launcher + "\r\n");
bw.flush();
}
else
{
Runtime.getRuntime().exec(launcher);
}
}
catch(Exception e)
{
e.printStackTrace();
}
}
}
Sur Windows, il n'y a pas de problème, le pot est lancé dans une autre console. Mais sur Linux, le fichier jar est lancé en arrière-plan et pas dans un autre terminal.
Thx pour de l'aide!
Et qu'est-ce que "autre terminal" de toute façon?/dev/ttyN? De nombreuses installations Linux s'exécutent sans interface graphique. –