Bonjour, j'utilise une API qui permet l'utilisation de "composants", ces composants sont des archives JARs que l'on décompresse sur le disque.
Par exemple comp.jar pourrait être décompressé de la façon suivante:
comp/
- bin/comp.class
- lib/dependance.jar
Le chargement du composant "comp.class" se fait de façon dynamique via un URLClassloader. Le répertoire lib contient tous les JARs dont a besoin "comp.class".
Le URLClassLoader essai de charger toutes les classes utilisées par "comp.class", normale, mais ce qui me pose problème c'est que sous Windows, un verrou est posé sur le fichier "dependance.jar" (que j'aurai besoin de supprimer une fois le chargement des classes effectué).
Apparement un rapport de bug a été posté ici : http://bugs.sun.com/bugdatabase/view...bug_id=5041014, un message a ce sujet est présent ici http://forum.java.sun.com/thread.jsp...sageID=1507426.
Aucun de ces deux posts ne me permet de résoudre mon problème, auriez vous des indices pour m'aider à avancer ? Y'a t'il des solutions permettant d'unlocker des fichiers sous Windows à partir d'un code Java ?
Après un peu de lecture j'ai cru comprendre que le ClassLoader créait un "lien" entre une classe chargée en mémoire et le fichier ".class" sur le disque, comment supprimer ce "lien" ?
Merci.
Bouba.
Partager