Hallo,
ich habe eine Anwendung die einen kleinen Server benötigt. Dieser Server ist ein einfaches jar das auf der Konsole mit java -jar name.jar gestartet werden kann.
Ich möchte dieses JAR jetzt aus meinem Quellcode starten. Ich habe mir auch schon eine Lösung gebastelt mit der ich aber noch nicht ganz zufrieden bin.
startSelenium.cmd sieht so aus:
Mein größtest Problem dabei ist, das ich nicht weiß wie ich den Server wieder beenden kann. Außerdem finde ich die Lösung mit der .cmd Datei unschön.
Wenn ich den Server über die Konsole starte kann ich ihn mit Strg-C beenden. Ich dachte jetzt an eine Lösung wo ich alle Befehle an die Runtime übergebe und wenn ich fertig bin halt noch Strg-C, wenn möglich. Ansonsten könnte ich evtl. auch den Thread beenden?
Ich bin offen für alle Ideen und Ratschläge wie ich das jar eleganter starten kann und vor allem wie ich den Server beenden kann wenn ich nicht mehr benötige.
THX
ich habe eine Anwendung die einen kleinen Server benötigt. Dieser Server ist ein einfaches jar das auf der Konsole mit java -jar name.jar gestartet werden kann.
Ich möchte dieses JAR jetzt aus meinem Quellcode starten. Ich habe mir auch schon eine Lösung gebastelt mit der ich aber noch nicht ganz zufrieden bin.
Code:
public class SeleniumServer extends Thread {
private static Logger logger = Logger.getLogger(SeleniumServer.class
.getName());
public static void main(String args[]) {
SeleniumServer t = new SeleniumServer();
t.start();
}
/*
* (non-Javadoc)
*
* @see java.lang.Thread#run()
*/
public void run() {
try {
String line;
File pfad = new File("");
Process p = Runtime.getRuntime().exec(
pfad.getAbsolutePath() + "\\" + "startSelenium.cmd");
BufferedReader input = new BufferedReader(new InputStreamReader(p
.getInputStream()));
while ((line = input.readLine()) != null) {
logger.info(line);
}
input.close();
} catch (Exception err) {
err.printStackTrace();
}
}
}
startSelenium.cmd sieht so aus:
Code:
cd lib
java -jar selenium-server.jar
Mein größtest Problem dabei ist, das ich nicht weiß wie ich den Server wieder beenden kann. Außerdem finde ich die Lösung mit der .cmd Datei unschön.
Wenn ich den Server über die Konsole starte kann ich ihn mit Strg-C beenden. Ich dachte jetzt an eine Lösung wo ich alle Befehle an die Runtime übergebe und wenn ich fertig bin halt noch Strg-C, wenn möglich. Ansonsten könnte ich evtl. auch den Thread beenden?
Ich bin offen für alle Ideen und Ratschläge wie ich das jar eleganter starten kann und vor allem wie ich den Server beenden kann wenn ich nicht mehr benötige.
THX