É possível fazer hot-swap de código Java entre dois computadores separados?

É possível fazer hot-swap de código Java entre dois computadores separados?

Quero usar dois computadores separados: um para programar um aplicativo e outro para testar. É possível executar o programa Java entre os dois computadores sem precisar compilar toda vez que altero o código, mas sim trocar o código a quente?

Responder1

Cada vez que você altera o código, você deve reconstruir o aplicativo. As cadeias de ferramentas são inteligentes o suficiente para reconstruir o aplicativo apenas parcialmente, conforme necessário, mas isso não é relevante - você deve reconstruir o aplicativo, e acho que faz mais sentido fazê-lo em sua máquina de programação, não em sua máquina de teste .

Agora você precisa implantá-lo na máquina de teste. Você não mencionou qual IDE está usando, mas o Eclipse é provavelmente o mais comum para Java e permite definir etapas personalizadas do processo de construção. Em outras palavras, você poderia adicionar uma etapa ao final do processo de construção que copia o arquivo jar para um compartilhamento de rede associado à máquina de teste. Veja as propriedades do projeto -> Construtores -> Novo. O que exatamente você adicionará dependerá do seu sistema operacional, mas deve fazer uso de comandos shell e variáveis ​​do Eclipse, por exemplo, ${project_loc}. A maioria dos IDEs deveria ter algo semelhante.

Em seguida, você precisa configurar algo em sua máquina de teste que executará o aplicativo sempre que o arquivo JAR for alterado. Aqui estão algumas respostas que descrevem como fazer isso:
https://stackoverflow.com/questions/4060212/in-linux-how-do-i-run-a-shell-script-when-a-file-or-directory-changes
Como executar um comando sempre que um arquivo for alterado?

informação relacionada