¿Cómo puede un archivo JAR eliminarse a sí mismo?

Necesito un archivo JAR para eliminarlo.

El problema es que Windows bloquea el archivo JAR mientras se está ejecutando y no puede eliminarse directamente.

He buscado soluciones en las que un script por lotes podría matar el proceso JAR y luego eliminar el archivo, pero

System.exit(0) no se desea porque no se puede ejecutar a través deBatch archivo.taskkill /F /IM "java.exe" no se desea porque mataTODAS Java procesos.jps No puede ser usadoporque solo está disponible enJDK y los usuarios pueden ejecutar unJRE entonces eso fallaría.

Estoy atascado en la búsqueda de una solución que me permita encontrar elPID de la corrienteJAR utilizandoJava código, luego escribiendo unBatch comando e insertando elPID que mata el proceso, p. como el siguiente:

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

Si se pregunta para qué sirve esto, puede verificaresta responder.

Respuestas a la pregunta(1)

Su respuesta a la pregunta