Je veux exécuter un fichier jar Java comme ceci:
Java -jar spider.jar
Comment l'exécuter en arrière-plan sous Windows?
Comme ceci sur Linux:
Nohup Java -jar spider.jar > /var/tmp/spider.log 2>&1 &
Sous Windows, il n'est pas normal qu'un processus se termine une fois que son parent a été tué (comme le font normalement Unix). Il n'y a donc pas de nécessité directe pour quelque chose comme Nohup
. Si vous voulez éviter la fenêtre de console qui lui est associée, vous pouvez utiliser javaw
mais la redirection ne fonctionnera pas.
Vous pouvez utiliser la commande Windows start
:
start /min Java -jar spider.jar
Cette commande n'est pas vraiment la même que Nohup
; mais cela peut convenir si vous êtes satisfait du processus Java exécuté dans une fenêtre réduite distincte. Voir http://www.Microsoft.com/resources/documentation/windows /xp/all/proddocs/en-us/ntcmds.mspx
La seule façon d'obtenir le comportement Nohup, où le processus s'exécute toujours après la déconnexion (comme pour les micro-services, les outils d'analyse, les travaux de traitement par lots du serveur, etc.), est d'exécuter le fichier .bat avec le start javaw -jar ...
le contenu en tant que service ou tâche planifiée.