#1 Le 02/04/2013, à 21:34
- Jagang
Interagir avec un programme Java
Bonjour,
Je viens de faire l’acquisition d'un petit serveur dédié pour faire tourner un serveur FeedTheBeast (Minecraft modifié).
Le serveur fonctionne parfaitement mais j'aimerais mettre en place un système de redémarrage du serveur Minecraft tous les jours ainsi qu'un backup.
Actuellement, je lance le serveur avec un script sh dans un Screen.
screen -r mc
sh launch.sh
Et launch.sh contient :
java -Xms512M -Xmx3500M -jar ftbserver.jar
Pour planifier l’exécution de la maintenance, j'utilise crontab :
0 5 * * * sh /root/autoSave.sh
Avec autoSave.sh :
#!/bin/ksh
cd /root/
DATE=$(date +"%Y-%m-%d %H:%M")
zip "./saves/$DATE" -r FTB
Peut-être devrais-je utilise TAR au lieu de ZIP ?
Bref, je souhaiterais donc que juste avant de faire l'archive, le serveur Minecraft s'éteigne correctement en exécutant la commande stop (voir un message pour dire qu'il va redémarrer say Redémarrage dans 5min). Mais je n'ai pas trouvé sur Google comment exécuter une commande dans Java à partir de la ligne de commande.
Pourrais-je avoir votre aide ?
Merci d'avance
Cordialement
Jagang
Hors ligne
#2 Le 02/04/2013, à 23:28
- jamesbad000
Re : Interagir avec un programme Java
Hello,
Java n'est pas un interpréteur de commande. Ton application tourne dans un process, et à moins que l'application elle même est mis en place un écouteur vers lequel tu peux envoyer un message pour lui demander de s'arrêter (en lançant un programme java qui est prévu pour le faire. Peut être le même que pour démarrer le serveur avec un paramètre "stop" par exemple).
Il n'y a pas de méthode "générale" qui permette de faire ce genre de chose. (sauf un kill du process dans lequel s’exécute l'application java)
L'espace et le temps sont les modes par lesquels nous pensons, et non les conditions dans lesquelles nous vivons. (Signé Albert)
Hors ligne
#3 Le 03/04/2013, à 07:22
- Jagang
Re : Interagir avec un programme Java
Pourtant, il y a bien un interpréteur dans le serveur puisque qu'on peut taper des commandes. N'y a-t-il pas un moyen de simuler l'appuie de touche du coups ?
Hors ligne