Como pode um arquivo JAR se excluir?

Eu preciso de um arquivo JAR para se excluir.

O problema é que o Windows bloqueia o arquivo JAR enquanto está em execução e não pode se excluir diretamente.

Eu procurei soluções em que um script em lote poderia matar o processo JAR e excluir o arquivo, mas

System.exit(0) não é desejado porque não pode ser executado através deBatch Arquivo.taskkill /F /IM "java.exe" não é desejado porque mataTUDO Java processos.jps não pode ser usadoporque está disponível apenas noJDK e os usuários podem executar umJRE então isso iria falhar.

Estou preso em procurar uma solução que me permita encontrar oPID do atualJAR usandoJava código e, em seguida, escrevendo umBatch comando e inserindo oPID o que mata o processo, p. como o seguinte:

printWriter.println("taskkill /PID " + currentJARPID);

Se você está se perguntando para que serve isso, verifiqueesta responda.

questionAnswers(1)

yourAnswerToTheQuestion