¿El proceso Java puede eliminar un JAR cargado?

Hola, tengo el siguiente problema:

Dentro de un proceso de desinstalación, cargo un JAR (controlador jdbc).

    URL pDriverJar = jarToDelete.toURI().toURL();
    URL[] lURLList = new URL[]{pDriverJar};
    URLClassLoader lLoader =  new URLClassLoader(lURLList, Thread.currentThread().getContextClassLoader());
    Thread.currentThread().setContextClassLoader(lLoader);
    Class<?> aClass = Class.forName("jdbc.Driver"); // was Oracle: oracle.jdbc.OracleDriver but should not be important

    if(jarToDelete.delete()){
        System.out.println("deleted");
    }else {
        jarToDelete.deleteOnExit();
    }

Después de la terminación de la JVM, la jarra sigue existiendo.

Como alternativa, creé un archivo temporal y copié el Jar en ese archivo temporal. Pero ahora el archivo temporal no se eliminará.

He leído que si ClassLoad es GC, los frascos cargados se pueden eliminar.

¿Alguien tiene una idea, cómo eliminar este archivo?

Respuestas a la pregunta(2)

Su respuesta a la pregunta