![Executando Java jar em máquina remota no Fire e esqueça](https://rvso.com/image/1586955/Executando%20Java%20jar%20em%20m%C3%A1quina%20remota%20no%20Fire%20e%20esque%C3%A7a.png)
Quero executar meu jar java em uma máquina remota estabelecendo uma conexão SSH. Consigo executar o jar, mas não consigo fechar a sessão SSH até pressionar CTRLC.
Abaixo está meu arquivo em lote para executar o jar. O nome do arquivo em lote é Run_service.bat
@ECHO off java.exe -jar D:\NSXJarfiles\BulkSolve-0.0.1-SNAPSHOT.jar & exit
Tentando executar o jar da sessão SSH usando o comando abaixo
ssh -v -o StrictHostKeyChecking=no -l userid IP "D:/Scripts/Run_Service.bat"
então estabeleci a sessão ssh e consigo executar o arquivo jar na sessão.
O serviço começou no porto.
Mas uma vez iniciado o serviço, tenho que fechar a sessão ssh, mas ela não fecha até que eu pressione CTRLC. Abaixo está a imagem do mesmo serviço iniciado na sessão ssh. Eu tentei muitas coisas, mas nada funcionou. Por favor, ajude-me a descobrir uma maneira de fazer o mesmo.
Responder1
Tente isto:
@ECHO off START /B javaw.exe -jar D:\NSXJarfiles\BulkSolve-0.0.1-SNAPSHOT.jar exit
Responder2
Nao tem almoço gratis; se quiser executar um aplicativo como serviço, você terá que instalar o aplicativo como serviço. Dessa forma, se o sistema operacional for reiniciado, seu aplicativo voltará sem intervenção humana. Também permite que você se desconecte do servidor SSH e faça com que o processo continue em execução. (Você também pode tentar cmd /c javaw.exe -jar D:\NSXJarfiles\BulkSolve-0.0.1-SNAPSHOT.jar
, mas se o processo morrer, ele não voltará)
Para bota de mola, confira oServiços do Windowsseção da referência, que aponta paraganha, e umexemplo mantido separadamentepara descrever como reunir tudo